XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet
公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/gpt4free

Add File API Documentation for Python and JS

fe88b57d
Heiner Lohaus <hlohaus@users.noreply.github.com>
提交于

代码差异

1 个文件 +14 -1
Modified g4f/tools/run_tools.py +14 -1
@@ -42,6 +42,19 @@ async def async_iter_run_tools(async_iter_callback, model, messages, tool_calls:
42 42 last_line = messages[-1]["content"].strip().splitlines()[-1]
43 43 content = f"Continue after this line.\n{last_line}"
44 44 messages.append({"role": "user", "content": content})
45 elif tool.get("function", {}).get("name") == "bucket_tool":
46 def on_bucket(match):
47 return "".join(read_bucket(get_bucket_dir(match.group(1))))
48 has_bucket = False
49 for message in messages:
50 if "content" in message and isinstance(message["content"], str):
51 new_message_content = re.sub(r'{"bucket_id":"([^"]*)"}', on_bucket, message["content"])
52 if new_message_content != message["content"]:
53 has_bucket = True
54 message["content"] = new_message_content
55 if has_bucket and isinstance(messages[-1]["content"], str):
56 messages[-1]["content"] += BUCKET_INSTRUCTIONS
57
45 58 response = async_iter_callback(model=model, messages=messages, **kwargs)
46 59 if not hasattr(response, "__aiter__"):
47 60 response = to_async_iterator(response)
@@ -95,5 +108,5 @@ def iter_run_tools(
95 108 message["content"] = new_message_content
96 109 if has_bucket and isinstance(messages[-1]["content"], str):
97 110 messages[-1]["content"] += BUCKET_INSTRUCTIONS
98 print(messages[-1])
111
99 112 return iter_callback(model=model, messages=messages, provider=provider, **kwargs)