[Bug] Cannot resolve string concatenation like '[xxx]'
还没有人认领这个 Issue。
评估
调研方向
未指定源文件或测试。首先复现第 21 行和第 25 行的模板表达式,并跟踪产生字符串拼接 IntrospectionException 的 Java 模板处理过程。完成标准是这些拼接能够解析且不再出现报告的语法错误,并添加回归覆盖。
由索引模型根据 Issue 内容生成。
描述
{% if messages[0]['role'] == 'system' %}
{% set loop_messages = messages[1:] %}
{% set system_message = messages[0]['content'] %}
{% elif USE_DEFAULT_PROMPT == true and not '<>' in messages[0]['content'] %}
{% set loop_messages = messages %}
{% set system_message = 'DEFAULT_SYSTEM_MESSAGE' %}
{% else %}
{% set loop_messages = messages %}
{% set system_message = false %}
{% endif %}
{% for message in loop_messages %}
{% if (message['role'] == 'user') != (loop.index0 % 2 == 0) %}
{{ raise_exception('Conversation roles must alternate user/assistant/user/assistant/...') }}
{% endif %}
{% if loop.index0 == 0 and system_message != false %}
{% set content = '<>\n' + system_message + '\n<>\n\n' + message['content'] %}
{% else %}
{% set content = message['content'] %}
{% endif %}
{% if message['role'] == 'user' %}
{{ bos_token + '[INST] ' + content.strip() + ' [/INST]' }}
{% elif message['role'] == 'system' %}
{{ '<>\n' + content.strip() + '\n<>\n\n' }}
{% elif message['role'] == 'assistant' %}
{{ ' ' + content.strip() + ' ' + eos_token }}
{% endif %}
{% endfor %}
[TemplateError{severity=FATAL, reason=SYNTAX_ERROR, item=OTHER, message='java.beans.IntrospectionException: Method not found: getChars', fieldName='bos_token + '[INST] ' + content.strip() + ' [/INST]'', lineno=21, startPosition=-1, scopeDepth=2, category=UNKNOWN, categoryErrors=null}, TemplateError{severity=FATAL, reason=SYNTAX_ERROR, item=OTHER, message='java.beans.IntrospectionException: Method not found: getChars', fieldName='' ' + content.strip() + ' ' + eos_token', lineno=25, startPosition=-1, scopeDepth=2, category=UNKNOWN, categoryErrors=null}]
- 主要语言
- Java
- 星标
- 785
- 派生
- 184
- 平均合并
- 6 天 22 小时
- 30 天内合并 PR
- 1
环境准备
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
HubSpot/jinjava 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 82/100
-
难度 2/5 1-3 小时 新手友好度 64/100
-
难度 3/5 1-2 天 新手友好度 82/100
-
难度 3/5 1-2 天 新手友好度 76/100
-
Jinjava 3.0可能重新可做 @jasmith-hs 于 209 天前认领,目前没有进行中的 PR。 未关闭
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 78/100
-
component/zeebe kind/bug
难度 1/5 1 小时以内 新手友好度 90/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
UniversalMediaServer/UniversalMediaServer#6356 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 88/100
refinedmods/refinedstorage2#1414 · 1 条评论 ·
-
难度 1/5 1-3 小时 新手友好度 88/100
yegor256/rultor-image#76 · 1 条评论 ·