ソースを参照

feat: optimize output parse (#906)

tags/0.3.15
takatost 2年前
コミット
d9afebe216
コミッターのメールアドレスに関連付けられたアカウントが存在しません
1個のファイルの変更2行の追加2行の削除
  1. 2
    2
      api/core/agent/agent/output_parser/structured_chat.py

+ 2
- 2
api/core/agent/agent/output_parser/structured_chat.py ファイルの表示

@@ -10,7 +10,7 @@ from langchain.schema import AgentAction, AgentFinish, OutputParserException
class StructuredChatOutputParser(LCStructuredChatOutputParser):
def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
try:
action_match = re.search(r"```(.*?)\n?(.*?)```", text, re.DOTALL)
action_match = re.search(r"```(\w*)\n?({.*?)```", text, re.DOTALL)
if action_match is not None:
response = json.loads(action_match.group(2).strip(), strict=False)
if isinstance(response, list):
@@ -26,4 +26,4 @@ class StructuredChatOutputParser(LCStructuredChatOutputParser):
else:
return AgentFinish({"output": text}, text)
except Exception as e:
raise OutputParserException(f"Could not parse LLM output: {text}") from e
raise OutputParserException(f"Could not parse LLM output: {text}")

読み込み中…
キャンセル
保存