langchain-Agent-工具检索

8 篇文章 0 订阅

有时会定义很多工具,而定义Agent的时候只想使用与问题相关的工具,这是可以通过向量数据库来检索相关的工具,传递给Agent

# Define which tools the agent can use to answer user queries
search = SerpAPIWrapper()
search_tool = Tool(
        name = "Search",
        func=search.run,
        description="useful for when you need to answer questions about current events"
    )
def fake_func(inp: str) -> str:
    return "foo"
fake_tools = [
    Tool(
        name=f"foo-{i}", 
        func=fake_func, 
        description=f"a silly function that you can use to get more information about the number {i}"
    ) 
    for i in range(99)
]
ALL_TOOLS = [search_tool] + fake_tools

from langchain.vectorstores import FAISS
from langchain.embeddings import OpenAIEmbeddings
from langchain.schema import Document
docs = [Document(page_content=t.description, metadata={"index": i}) for i, t in enumerate(ALL_TOOLS)]
vector_store = FAISS.from_documents(docs, OpenAIEmbeddings())
retriever = vector_store.as_retriever()
 
def get_tools(query):
    docs = retriever.get_relevant_documents(query)
    return [ALL_TOOLS[d.metadata["index"]] for d in docs]

tool = get_tools("What is today weather")
  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用vue-file-agent,您需要按照以下步骤进行操作: 1. 首先,您需要在您的Vue项目中安装vue-file-agent。可以使用npm或yarn命令进行安装: ```bash npm install vue-file-agent ``` 或 ```bash yarn add vue-file-agent ``` 2. 在您的Vue组件中,导入vue-file-agent并注册组件。您可以在需要使用vue-file-agent的组件中进行导入和注册: ```javascript import VueFileAgent from 'vue-file-agent'; import 'vue-file-agent/dist/vue-file-agent.css'; export default { components: { VueFileAgent, }, // ... } ``` 3. 在您的模板中,使用vue-file-agent组件。您可以在模板中使用vue-file-agent组件,并为其提供必要的属性和事件监听器: ```html <template> <div> <vue-file-agent :multiple="true" @selected="handleFileSelected" > <button>Select Files</button> </vue-file-agent> </div> </template> ``` 在上面的例子中,我们使用了`multiple`属性来允许选择多个文件,并使用`@selected`事件来监听文件选择的回调函数。 4. 在您的Vue组件中处理文件选择。在Vue组件的方法中,您可以处理文件选择的回调函数,以获取选择的文件信息: ```javascript export default { // ... methods: { handleFileSelected(files) { // 处理选择的文件 console.log(files); }, }, } ``` 在上面的例子中,我们简单地将选择的文件信息打印到控制台上。 这就是使用vue-file-agent的基本步骤。您可以根据您的需求进行更多的配置和使用。请参考vue-file-agent的文档以获取更多详细信息:https://www.npmjs.com/package/vue-file-agent

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值