news 2026/4/29 0:07:46

使用LlamaIndex与OpenAI构建具备自我评估能力的智能体AI系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
使用LlamaIndex与OpenAI构建具备自我评估能力的智能体AI系统

如何使用LlamaIndex和OpenAI构建具备自我评估能力的智能体AI系统

在本教程中,将构建一个使用LlamaIndex和OpenAI模型的高级智能体AI工作流。重点关注设计一个可靠的检索增强生成(RAG)智能体,使其能够基于证据进行推理、审慎使用工具,并评估自身输出的质量。通过围绕检索、答案合成和自我评估来构建系统,展示智能体模式如何超越简单的聊天机器人,朝着更值得信赖、可控的AI系统迈进,适用于研究和分析用例。

!pip-q install-U llama-index llama-index-llms-openai llama-index-embeddings-openai nest_asyncio
importosimportasyncioimportnest_asyncio nest_asyncio.apply()fromgetpassimportgetpassifnotos.environ.get("OPENAI_API_KEY"):os.environ["OPENAI_API_KEY"]=getpass("Enter OPENAI_API_KEY: ")

设置环境并安装运行智能体AI工作流所需的所有依赖项。在运行时安全地加载某中心的API密钥,确保凭证不会被硬编码。同时,准备笔记本以平滑处理异步执行。

fromllama_index.coreimportDocument,VectorStoreIndex,Settingsfromllama_index.llms.openaiimportOpenAIfromllama_index.embeddings.openaiimportOpenAIEmbedding Settings.llm=OpenAI(model="gpt-4o-mini",temperature=0.2)Settings.embed_model=OpenAIEmbedding(model="text-embedding-3-small")texts=["可靠的RAG系统将检索、合成和验证分开。常见的失败包括幻觉和浅层检索。","RAG评估侧重于忠实性、答案相关性和检索质量。","使用工具的智能体需要受约束的工具、验证和自我审查循环。","一个稳健的工作流遵循检索、回答、评估和修订的步骤。"]docs=[Document(text=t)fortintexts]index=VectorStoreIndex.from_documents(docs)query_engine=index.as_query_engine(similarity_top_k=4)

配置某中心语言模型和嵌入模型,并为智能体构建一个紧凑的知识库。将原始文本转换为索引文档,以便智能体在推理过程中可以检索相关证据。

fromllama_index.core.evaluationimportFaithfulnessEvaluator,RelevancyEvaluator faith_eval=FaithfulnessEvaluator(llm=Settings.llm)rel_eval=RelevancyEvaluator(llm=Settings.llm)defretrieve_evidence(q:str)->str:r=query_engine.query(q)out=[]fori,ninenumerate(r.source_nodesor[]):out.append(f"[{i+1}]{n.node.get_content()[:300]}")return"\n".join(out)defscore_answer(q:str,a:str)->str:r=query_engine.query(q)ctx=[n.node.get_content()forninr.source_nodesor[]]f=faith_eval.evaluate(query=q,response=a,contexts=ctx)r=rel_eval.evaluate(query=q,response=a,contexts=ctx)returnf"Faithfulness:{f.score}\nRelevancy:{r.score}"

定义智能体使用的核心工具:证据检索和答案评估。实现忠实性和相关性的自动评分,使智能体能够判断自身响应的质量。

fromllama_index.core.agent.workflowimportReActAgentfromllama_index.core.workflowimportContext agent=ReActAgent(tools=[retrieve_evidence,score_answer],llm=Settings.llm,system_prompt=""" 始终首先检索证据。 生成结构化的答案。 评估答案,如果分数低则修改一次。 """,verbose=True)ctx=Context(agent)

创建基于ReAct的智能体,并定义其系统行为,指导其如何检索证据、生成答案和修订结果。同时初始化执行上下文,该上下文在交互过程中维护智能体的状态。这一步将工具和推理整合到一个单一的智能体工作流中。

asyncdefrun_brief(topic:str):q=f"设计一个可靠的RAG + 工具使用智能体工作流以及如何评估它。主题:{topic}"handler=agent.run(q,ctx=ctx)asyncforevinhandler.stream_events():print(getattr(ev,"delta",""),end="")res=awaithandlerreturnstr(res)topic="RAG agent reliability and evaluation"loop=asyncio.get_event_loop()result=loop.run_until_complete(run_brief(topic))print("\n\nFINAL OUTPUT\n")print(result)

通过将一个主题传递到系统中并流式传输智能体的推理和输出来执行完整的智能体循环。允许智能体异步完成其检索、生成和评估周期。

总结而言,展示了智能体如何在最终确定答案之前检索支持性证据、生成结构化响应并评估其自身的忠实性和相关性。设计保持了模块化和透明性,使得可以轻松地使用额外的工具、评估器或特定领域知识源来扩展工作流。这种方法说明了如何将智能体AI与LlamaIndex和某中心模型结合使用,以构建功能更强大、在推理和响应方面也更可靠和更具自我意识的系统。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)或者 我的个人博客 https://blog.qife122.com/
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/25 23:11:07

基于Python的京东手机销售数据分析系统

前言随着电商行业的蓬勃发展,京东作为国内领先的电商平台,积累了大量的手机销售数据。这些数据不仅反映了消费者的购买行为和市场需求,还揭示了手机市场的竞争格局和未来趋势。因此,开发一个基于Python的京东手机销售数据分析系统…

作者头像 李华
网站建设 2026/4/18 5:34:01

【工具变量】企业过度负债水平数据集(2009-2024年)

数据简介: 企业过度负债水平是指企业债务规模显著超过其偿还能力或合理承受范围的状态。这一概念并非简单地以债务绝对值衡量,而是基于企业财务结构、现金流创造能力及行业特征的综合判断。 围绕企业过度负债水平的研究可形成一个多维度、跨学科的综合…

作者头像 李华
网站建设 2026/4/25 10:11:54

基于python的连锁超市线上管理系统hx2008

前言   基于Python的连锁超市线上管理系统,是专为连锁超市设计的现代化管理工具,它利用Python语言的强大功能和丰富的生态系统,结合Web开发技术,实现了超市运营的全面数字化和智能化管理。 一、项目介绍 开发语言:P…

作者头像 李华
网站建设 2026/4/28 8:19:30

白银50年历史价格全复盘,核心影响要素有哪些?

白银50年历史价格全复盘,核心影响要素有哪些?白银兼具贵金属避险属性与工业金属实用属性,是全球金融市场与实体经济联动的重要纽带。1974-2024年的50年间,全球经济格局迭代、货币政策转向、国际局势动荡、工业需求升级&#xff0c…

作者头像 李华
网站建设 2026/4/23 0:24:08

帝国CMS的富文本编辑器能否识别Word粘贴的复杂表格结构?

CMS企业官网Word文档导入功能开发记录 需求分析 作为浙江的一名PHP开发者,我最近接手了一个帝国CMS企业官网的外包项目。客户提出了一个关键需求:在后台新闻管理系统的文章发布模块中,增加Word/Excel/PPT/PDF文档导入和一键粘贴功能。这个需…

作者头像 李华
网站建设 2026/4/28 3:19:32

2025年全球顶尖杀毒软件,从零基础到精通,收藏这篇就够了!

在这个信息爆炸的时代,咱们每天都在互联网的海洋里遨游,一不小心就可能遇到“网络病毒”这只拦路虎。所以,选择一款给力的杀毒软件,就显得尤为重要啦!今天,我就来给大家盘点一下2025年全球排名前五的杀毒软…

作者头像 李华