From 303c9d94df3e38793bfd968f34a298fbee513b5f Mon Sep 17 00:00:00 2001 From: zR <2448370773@qq.com> Date: Sun, 22 Oct 2023 00:07:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=8C=E6=A0=BC=E5=BC=8F?= =?UTF-8?q?=E4=BA=86=E9=83=A8=E5=88=86Agent=E5=B7=A5=E5=85=B7=20(#1823)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 支持了agentlm * 支持了agentlm和相关提示词 * 修改了Agent的一些功能,加入了Embed方面的一个优化 * 修改了部分Agent的工具 --------- Co-authored-by: zR --- server/agent/tools/search_all_knowledge_more.py | 3 ++- server/agent/tools/search_all_knowledge_once.py | 3 ++- server/agent/tools/weather.py | 10 +++++++++- server/agent/tools_select.py | 2 +- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/server/agent/tools/search_all_knowledge_more.py b/server/agent/tools/search_all_knowledge_more.py index 332695b..5bbf60c 100644 --- a/server/agent/tools/search_all_knowledge_more.py +++ b/server/agent/tools/search_all_knowledge_more.py @@ -1,3 +1,4 @@ +from __future__ import annotations import json import re import warnings @@ -265,7 +266,7 @@ class LLMKnowledgeChain(LLMChain): llm: BaseLanguageModel, prompt: BasePromptTemplate = PROMPT, **kwargs: Any, - ): + ) -> LLMKnowledgeChain: llm_chain = LLMChain(llm=llm, prompt=prompt) return cls(llm_chain=llm_chain, **kwargs) diff --git a/server/agent/tools/search_all_knowledge_once.py b/server/agent/tools/search_all_knowledge_once.py index a29eadf..98ad2bb 100644 --- a/server/agent/tools/search_all_knowledge_once.py +++ b/server/agent/tools/search_all_knowledge_once.py @@ -1,3 +1,4 @@ +from __future__ import annotations import re import warnings from typing import Dict @@ -212,7 +213,7 @@ class LLMKnowledgeChain(LLMChain): llm: BaseLanguageModel, prompt: BasePromptTemplate = PROMPT, **kwargs: Any, - ): + ) -> LLMKnowledgeChain: llm_chain = LLMChain(llm=llm, prompt=prompt) return cls(llm_chain=llm_chain, **kwargs) diff --git a/server/agent/tools/weather.py b/server/agent/tools/weather.py index 2dba79b..3d99fb6 100644 --- a/server/agent/tools/weather.py +++ b/server/agent/tools/weather.py @@ -1,4 +1,10 @@ -## 使用和风天气API查询天气,这个模型仅仅对免费的API进行了适配,建议使用GPT4等高级模型进行适配 +from __future__ import annotations + +## 单独运行的时候需要添加 +import sys +import os +sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))) + import re import warnings from typing import Dict @@ -22,6 +28,8 @@ from server.agent import model_container KEY = "ac880e5a877042809ac7ffdd19d95b0d" #key长这样,这里提供了示例的key,这个key没法使用,你需要自己去注册和风天气的账号,然后在这里填入你的key + + _PROMPT_TEMPLATE = """ 用户会提出一个关于天气的问题,你的目标是拆分出用户问题中的区,市 并按照我提供的工具回答。 例如 用户提出的问题是: 上海浦东未来1小时天气情况? diff --git a/server/agent/tools_select.py b/server/agent/tools_select.py index 314a218..9407b4d 100644 --- a/server/agent/tools_select.py +++ b/server/agent/tools_select.py @@ -68,4 +68,4 @@ tools = [ ), ] -tool_names = [tool.name for tool in tools] +tool_names = [tool.name for tool in tools] \ No newline at end of file