Agents use grammar (#31735)
* Allow optional use of grammars to constrain generation
This commit is contained in:
@@ -30,7 +30,7 @@ def get_new_path(suffix="") -> str:
|
||||
return os.path.join(directory, str(uuid.uuid4()) + suffix)
|
||||
|
||||
|
||||
def fake_react_json_llm(messages, stop_sequences=None) -> str:
|
||||
def fake_react_json_llm(messages, stop_sequences=None, grammar=None) -> str:
|
||||
prompt = str(messages)
|
||||
|
||||
if "special_marker" not in prompt:
|
||||
@@ -53,7 +53,7 @@ Action:
|
||||
"""
|
||||
|
||||
|
||||
def fake_react_code_llm(messages, stop_sequences=None) -> str:
|
||||
def fake_react_code_llm(messages, stop_sequences=None, grammar=None) -> str:
|
||||
prompt = str(messages)
|
||||
if "special_marker" not in prompt:
|
||||
return """
|
||||
@@ -119,7 +119,7 @@ final_answer(res)
|
||||
"""
|
||||
|
||||
|
||||
def fake_code_llm_oneshot(messages, stop_sequences=None) -> str:
|
||||
def fake_code_llm_oneshot(messages, stop_sequences=None, grammar=None) -> str:
|
||||
return """
|
||||
Thought: I should multiply 2 by 3.6452. special_marker
|
||||
Code:
|
||||
@@ -130,7 +130,7 @@ final_answer(result)
|
||||
"""
|
||||
|
||||
|
||||
def fake_code_llm_no_return(messages, stop_sequences=None) -> str:
|
||||
def fake_code_llm_no_return(messages, stop_sequences=None, grammar=None) -> str:
|
||||
return """
|
||||
Thought: I should multiply 2 by 3.6452. special_marker
|
||||
Code:
|
||||
|
||||
Reference in New Issue
Block a user