forked from Archives/langchain
updated llm response parsing action (#3058)
Sometimes the LLM response (generated code) tends to miss the ending ticks "```". Therefore causing the text parsing to fail due to not enough values to unpack. The 2 extra `_` don't add value and can cause errors. Suggest to simply update the `_, action, _` to just `action` then with index. Fixes issue #3057
This commit is contained in:
parent
db968284f8
commit
2984ad3964
@ -14,7 +14,7 @@ class ChatOutputParser(AgentOutputParser):
|
|||||||
{"output": text.split(FINAL_ANSWER_ACTION)[-1].strip()}, text
|
{"output": text.split(FINAL_ANSWER_ACTION)[-1].strip()}, text
|
||||||
)
|
)
|
||||||
try:
|
try:
|
||||||
_, action, _ = text.split("```")
|
action = text.split("```")[1]
|
||||||
response = json.loads(action.strip())
|
response = json.loads(action.strip())
|
||||||
return AgentAction(response["action"], response["action_input"], text)
|
return AgentAction(response["action"], response["action_input"], text)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user