首页 > 科技周边 > 人工智能 > 基于抹布的研究助理使用O3-Mini和Crewai

基于抹布的研究助理使用O3-Mini和Crewai

Joseph Gordon-Levitt
发布: 2025-03-05 10:12:15
原创
450 人浏览过

OpenAI的最新型号O3-Mini正在使用其先进的推理,解决问题和代码生成功能来彻底改变编码任务。它有效地处理复杂的查询并集成了结构化数据,并在AI应用程序中设置了新标准。本文使用O3-Mini和Crewai探讨了建立检索功能的生成(RAG)研究助理代理,该代理从多个PDF中检索信息,并处理用户智能查询。我们将使用Crewai的Crewdoclingsource,Serperdevtool和Openai的O3-Mini来增强研究工作流程的自动化。

> >内容表

>用O3-Mini和Crewai
  • >先前构建RAG代理
    • 步骤1:安装所需的库
    • 文档
    • >
    • 步骤5:定义AI模型
    • >步骤6:配置Web搜索工具
    • 步骤7:为文档搜索定义嵌入模型搜索
    • 11:运行研究助手
  • >
  • 结论
  • >常见问题
>用O3-Mini和Crewai

构建破布代理

>发表了大量的研究,基于抹布的助手可以帮助研究人员快速找到相关的见解,而无需手动浏览数百篇论文。我们将要构建的代理将处理PDF,以根据文档的内容提取关键信息并回答查询。如果在PDF中找不到所需的信息,它将自动执行网络搜索以提供相关的见解。可以扩展此设置以用于更高级的任务,例如汇总多个论文,检测矛盾的发现或生成结构化报告。

>在本动手指南中,我们将建立一个研究代理,该研究代理将介绍有关DeepSeek-R1和O3-Mini的文章,以回答我们询问这些模型的查询。为了建立这位研究助理代理商,我们将首先经过先决条件并建立环境。然后,我们将导入必要的模块,设置API键并加载研究文档。然后,我们将继续定义AI模型并将Web搜索工具集成到其中。最后,我们将创建AI代理,定义他们的任务并组装船员。准备好后,我们将经营研究助理代理商,以了解O3-Mini是否比DeepSeek-R1更好,更安全。

>先决条件

>在进行实施之前,让我们简要介绍我们需要开始的内容。拥有正确的设置可确保平稳的开发过程并避免不必要的中断。

因此,请确保您有:

  • 工作的Python环境(3.8或更高)
  • > OpenAi和Serper(Google Scholar API)
  • API键
  • >

将它们安装到位,我们准备开始建造!

>

步骤1:安装所需库

>

首先,我们需要安装必要的库。这些库为文档处理,AI代理编排和Web搜索功能提供了基础。

!pip install crewai
!pip install 'crewai[tools]'
!pip install docling
登录后复制
登录后复制
登录后复制

这些图书馆在建立有效的AI驱动研究助理方面起着至关重要的作用。

    > Crewai为设计和管理AI代理提供了一个强大的框架,允许定义专业角色并实现有效的研究自动化。它还促进了任务委托,以确保AI代理之间的平稳协作。 此外,Crewai [工具]安装了增强AI代理功能的基本工具,使其能够与API进行交互,执行Web搜索并无缝处理数据。
  • 文档专门从研究文档中提取结构化知识,使其非常适合处理PDF,学术论文和基于文本的文件。在该项目中,它用于从Arxiv研究论文中提取关键发现。
  • 步骤2:导入必要的模块
  • 在此,
  • >

> OS模块可以安全地管理环境变量,例如API键,以进行平滑集成。

LLM为AI推理和响应产生提供动力。
import os
from crewai import LLM, Agent, Crew, Task
from crewai_tools import SerperDevTool
from crewai.knowledge.source.crew_docling_source import CrewDoclingSource
登录后复制
登录后复制
登录后复制
代理定义了专门的角色以有效地处理任务。

机组人员管理多个代理商,确保了无缝协作。>

任务分配和跟踪特定的职责。
    Serperdevtool
  • 启用Google Scholar搜索,改善外部参考检索。
  • > CREWDOCLINGSOURCE整合了研究文档,实现结构化知识提取和分析。
  • 步骤3:设置API键
  • 如何获取API键?
  • >
  • OpenAI API键:在OpenAI上注册并获取API密钥。>
  • Serper API密钥:在Serper.dev上注册以获取API密钥。
这些API键允许访问AI模型和Web搜索功能。>

步骤4:加载研究文件

在此步骤中,我们将加载来自Arxiv的研究论文,使我们的AI模型从中提取见解。选定的论文涵盖了关键主题:
os.environ['OPENAI_API_KEY'] = 'your_openai_api_key'
os.environ['SERPER_API_KEY'] = 'your_serper_api_key'
登录后复制
登录后复制
登录后复制

> https://arxiv.org/pdf/2501.12948:通过增强学习(DeepSeek-r1)探索LLMS中的推理能力。
  1. https://arxiv.org/pdf/2501.18438:比较O3-Mini和DeepSeek-r1的安全性
  2. https://arxiv.org/pdf/2401.02954:讨论具有长期视角的扩展开源语言模型。
  3. >

步骤5:定义AI模型

现在我们将定义AI模型。
!pip install crewai
!pip install 'crewai[tools]'
!pip install docling
登录后复制
登录后复制
登录后复制
  • o3 mini:一种强大的推理的AI模型。
  • >
  • 温度= 0:确保确定性输出(相同查询的相同答案)。
  • >

>步骤6:配置Web搜索工具

为了增强研究能力,我们整合了一个网络搜索工具,该工具在提供的文档中未找到所需的信息时检索相关的学术论文。

import os
from crewai import LLM, Agent, Crew, Task
from crewai_tools import SerperDevTool
from crewai.knowledge.source.crew_docling_source import CrewDoclingSource
登录后复制
登录后复制
登录后复制
search_url =“ https://google.serper.dev/scholar”
  1. >这指定了Google Scholar Search API端点。它确保在学术文章,研究论文和学术来源而不是一般网页中专门进行搜索。

n_results = 2

  1. 此参数限制了工具返回的搜索结果的数量,以确保仅检索最相关的信息。在这种情况下,它将从Google Scholar中获取前两篇研究论文,优先考虑高质量的学术来源。通过减少结果的数量,助手保持响应简洁有效,避免了不必要的信息过载,同时保持准确性。
  2. >
步骤7:定义文档搜索的嵌入模型

>为了有效地从文档中检索相关信息,我们使用嵌入模型,将文本转换为基于相似性搜索的数值表示。

crewai中的嵌入器用于将文本转换为数值表示(嵌入),从而实现有效的文档检索和语义搜索。在这种情况下,嵌入模型由OpenAI提供,特别是使用“ Text-Embedding-ADA-002”,这是一种用于生成高质量嵌入的模型。从环境变量中检索API键以对请求进行身份验证。

>
os.environ['OPENAI_API_KEY'] = 'your_openai_api_key'
os.environ['SERPER_API_KEY'] = 'your_serper_api_key'
登录后复制
登录后复制
登录后复制
> Crewai支持包括OpenAI和Gemini(Google的AI模型)在内的多个嵌入式提供商,从而可以灵活地根据准确性,性能和成本考虑选择最佳模型。

步骤8:创建AI代理

>现在,我们将创建研究任务所需的两个AI代理:文档搜索代理和Web搜索代理。

文档搜索代理负责从提供的研究论文和文档中检索答案。它是分析技术内容和提取相关见解的专家。如果找不到所需的信息,它可以将查询委托给Web搜索代理以进行进一步探索。 allow_delegation = true设置启用此委托过程。

>
!pip install crewai
!pip install 'crewai[tools]'
!pip install docling
登录后复制
登录后复制
登录后复制
另一方面,Web搜索代理人旨在使用Google Scholar在线搜索缺失的信息。仅当文档搜索代理未能在可用文档中找到答案时,它才会介入。与文档搜索代理不同,它无法进一步委派任务(lashe_delegation = false)。它使用Serper(Google Scholar API)作为获取相关学术论文并确保准确响应的工具。

>步骤9:定义代理的任务
import os
from crewai import LLM, Agent, Crew, Task
from crewai_tools import SerperDevTool
from crewai.knowledge.source.crew_docling_source import CrewDoclingSource
登录后复制
登录后复制
登录后复制

>现在我们将为代理创建两个任务。

>

第一个任务涉及使用可用的研究论文和文档回答给定的问题。

>

>任务1:从文档中提取信息

当基于文档的搜索未产生答案时,下一个任务就会发挥作用。
os.environ['OPENAI_API_KEY'] = 'your_openai_api_key'
os.environ['SERPER_API_KEY'] = 'your_serper_api_key'
登录后复制
登录后复制
登录后复制
任务2:执行Web搜索,如果需要的话

>

步骤10:组装船员

>
content_source = CrewDoclingSource(
    file_paths=[
        "https://arxiv.org/pdf/2501.12948",
        "https://arxiv.org/pdf/2501.18438",
        "https://arxiv.org/pdf/2401.02954"
    ],
)
登录后复制
crewai的工作人员通过协调文档搜索代理和Web搜索代理来管理代理有效地完成任务。它首先在上传的文档中搜索并在Web搜索中搜索。

>

>知识_sources = [content_source]提供相关文档,

>
    >嵌入式=嵌入器启用语义搜索,
  • > >
  • 步骤11:运行研究助理
>初始查询针对文档,以检查研究人员是否可以提供响应。提出的问题是“ O3-Mini vs DeepSeek-R1:哪一个更安全?”
llm = LLM(model="o3-mini", temperature=0)
登录后复制
>

>示例查询1:

响应

serper_tool = SerperDevTool(
    search_url="https://google.serper.dev/scholar",
    n_results=2  # Fetch top 2 results
)
登录后复制

>在这里,我们可以看到最终答案是由文档搜索者生成的,因为它在提供的文档中成功找到了所需的信息。

基于抹布的研究助理使用O3-Mini和Crewai>示例查询2:

在这里,问题“哪个更好,O3 mini还是DeepSeek R1?”文档中不可用。系统将检查文档搜索代理是否可以找到答案;如果没有,它将将任务委派给Web搜索代理

响应

embedder = {
    "provider": "openai",
    "config": {
        "model": "text-embedding-ada-002",
        "api_key": os.environ['OPENAI_API_KEY']
    }
}
登录后复制

从输出中,我们观察到响应是使用Web Searcher代理生成的,因为文档研究人员代理找不到所需的信息。此外,它包括最终取回答案的来源。

>

结论

在这个项目中,我们成功地建立了一个由AI驱动的研究助理,该研究助理有效地从研究论文和网络中分析了信息。通过使用Crewai进行代理协调,用于文档处理的文档以及用于学术搜索的Serper,我们创建了一个能够回答具有结构性见解的复杂查询的系统。

助手在文档中首次搜索,并在需要时无缝将其委派给Web搜索,以确保准确的响应。这种方法通过自动化信息检索和分析来提高研究效率。此外,通过将O3-Mini研究助理与Crewai的Crewdoclingsource和Serperdevtool集成,我们进一步增强了该系统的文档分析功能。通过进一步的自定义,可以扩展此框架以支持更多的数据源,高级推理和改进的研究工作流程。

>

您可以在我们的免费课程中探索以Openai O3-Mini为特色的令人惊叹的项目 - 从O3-Mini开始

常见问题

> Q1。什么是crewai?

a。 Crewai是一个框架,可让您创建和管理具有特定角色和任务的AI代理。它使多个AI代理之间的协作能够自动化复杂的工作流程。 Crewai如何管理多个代理? Crewai使用一种结构化方法,每个代理具有定义的角色,并且可以在需要时委派任务。机组人员对这些代理进行协调以有效地完成任务。什么是crewdoclingsource? CrewDoclingSource是Crewai中的文档处理工具,它从研究论文,PDF和基于文本的文档中提取结构化知识。

Q4。什么是Serper API? Serper API是一种允许AI应用程序执行Google搜索查询的工具,包括在Google Scholar上搜索学术论文。 Serper API可以免费使用吗? Serper API提供免费的和付费计划,对免费层中的搜索请求数量的限制。 Q6。 Serper API和传统的Google搜索有什么区别?与标准的Google搜索不同,Serper API提供了对搜索结果的结构化访问,使AI代理可以有效提取相关的研究论文。 CREWDOCLINGSOURCE可以处理多个文件格式吗?是的,它支持常见的研究文档格式,包括PDF和基于文本的文件。>

以上是基于抹布的研究助理使用O3-Mini和Crewai的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板