使用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_asyncioimportosimportasyncioimportnest_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.llmOpenAI(modelgpt-4o-mini,temperature0.2)Settings.embed_modelOpenAIEmbedding(modeltext-embedding-3-small)texts[可靠的RAG系统将检索、合成和验证分开。常见的失败包括幻觉和浅层检索。,RAG评估侧重于忠实性、答案相关性和检索质量。,使用工具的智能体需要受约束的工具、验证和自我审查循环。,一个稳健的工作流遵循检索、回答、评估和修订的步骤。]docs[Document(textt)fortintexts]indexVectorStoreIndex.from_documents(docs)query_engineindex.as_query_engine(similarity_top_k4)配置某中心语言模型和嵌入模型并为智能体构建一个紧凑的知识库。将原始文本转换为索引文档以便智能体在推理过程中可以检索相关证据。fromllama_index.core.evaluationimportFaithfulnessEvaluator,RelevancyEvaluator faith_evalFaithfulnessEvaluator(llmSettings.llm)rel_evalRelevancyEvaluator(llmSettings.llm)defretrieve_evidence(q:str)-str:rquery_engine.query(q)out[]fori,ninenumerate(r.source_nodesor[]):out.append(f[{i1}]{n.node.get_content()[:300]})return\n.join(out)defscore_answer(q:str,a:str)-str:rquery_engine.query(q)ctx[n.node.get_content()forninr.source_nodesor[]]ffaith_eval.evaluate(queryq,responsea,contextsctx)rrel_eval.evaluate(queryq,responsea,contextsctx)returnfFaithfulness:{f.score}\nRelevancy:{r.score}定义智能体使用的核心工具证据检索和答案评估。实现忠实性和相关性的自动评分使智能体能够判断自身响应的质量。fromllama_index.core.agent.workflowimportReActAgentfromllama_index.core.workflowimportContext agentReActAgent(tools[retrieve_evidence,score_answer],llmSettings.llm,system_prompt 始终首先检索证据。 生成结构化的答案。 评估答案如果分数低则修改一次。 ,verboseTrue)ctxContext(agent)创建基于ReAct的智能体并定义其系统行为指导其如何检索证据、生成答案和修订结果。同时初始化执行上下文该上下文在交互过程中维护智能体的状态。这一步将工具和推理整合到一个单一的智能体工作流中。asyncdefrun_brief(topic:str):qf设计一个可靠的RAG 工具使用智能体工作流以及如何评估它。主题{topic}handleragent.run(q,ctxctx)asyncforevinhandler.stream_events():print(getattr(ev,delta,),end)resawaithandlerreturnstr(res)topicRAG agent reliability and evaluationloopasyncio.get_event_loop()resultloop.run_until_complete(run_brief(topic))print(\n\nFINAL OUTPUT\n)print(result)通过将一个主题传递到系统中并流式传输智能体的推理和输出来执行完整的智能体循环。允许智能体异步完成其检索、生成和评估周期。总结而言展示了智能体如何在最终确定答案之前检索支持性证据、生成结构化响应并评估其自身的忠实性和相关性。设计保持了模块化和透明性使得可以轻松地使用额外的工具、评估器或特定领域知识源来扩展工作流。这种方法说明了如何将智能体AI与LlamaIndex和某中心模型结合使用以构建功能更强大、在推理和响应方面也更可靠和更具自我意识的系统。更多精彩内容 请关注我的个人公众号 公众号办公AI智能小助手或者 我的个人博客 https://blog.qife122.com/对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号网络安全技术点滴分享

相关新闻

基于python的垃圾分类系统

基于python的垃圾分类系统

前言随着环保意识的增强和垃圾分类政策的普及,开发一款高效、智能的垃圾分类系统成为提升公众参与度和分类准确率的关键。基于Python的垃圾分类系统结合图像识别、自然语言处理(NLP)和数据库技术,能够自动识别垃圾类型、提供分类指…

2026/7/6 5:59:23 阅读更多 →
python基于协同过滤算法个性化动漫推荐系统hx3637

python基于协同过滤算法个性化动漫推荐系统hx3637

前言随着动漫产业的蓬勃发展,网络上涌现出海量的动漫资源。对于动漫爱好者来说,在众多选择中找到符合自己口味的动漫作品变得愈发困难。因此,开发一个基于协同过滤算法的个性化动漫推荐系统显得尤为重要。该系统旨在通过分析用户的历史行为数…

2026/7/3 15:14:05 阅读更多 →
基于python的京东评论数据分析可视化

基于python的京东评论数据分析可视化

前言   随着电子商务的快速发展,京东等电商平台上的商品评论数据日益丰富。这些评论数据不仅反映了消费者对商品的满意度,还蕴含着市场趋势、用户偏好等有价值的信息。然而,面对海量的评论数据,传统的人工分析方式效率低下&…

2026/7/6 13:23:10 阅读更多 →

最新新闻

交叉熵损失函数 PyTorch 2.0 实战:3 种分类任务代码对比与性能分析

交叉熵损失函数 PyTorch 2.0 实战:3 种分类任务代码对比与性能分析

交叉熵损失函数 PyTorch 2.0 实战:3 种分类任务代码对比与性能分析在深度学习分类任务中,损失函数的选择直接影响模型的训练效果。交叉熵损失函数因其优秀的数学特性,成为分类问题的标配工具。本文将聚焦PyTorch 2.0框架,通过代码…

2026/7/7 6:27:46 阅读更多 →
免费英雄联盟终极工具箱:5分钟快速掌握League Akari的完整使用指南

免费英雄联盟终极工具箱:5分钟快速掌握League Akari的完整使用指南

免费英雄联盟终极工具箱:5分钟快速掌握League Akari的完整使用指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 你是否觉得英雄…

2026/7/7 6:27:46 阅读更多 →
写在开头:我为什么开这个专栏?

写在开头:我为什么开这个专栏?

你好,欢迎来到《制造业数字化实战》专栏。 我是吴记数智工坊,在电子制造行业做了15年数字化系统,从一线开发到技术经理,经手84个系统项目——覆盖SMT生产、品质、仓储、成本、关务等全链条。 过去,我只是一个写代码的人…

2026/7/7 6:27:46 阅读更多 →
PyTorch EMA实现避坑:decay=0.999与0.9999的4个关键差异点

PyTorch EMA实现避坑:decay=0.999与0.9999的4个关键差异点

PyTorch EMA实现深度解析:从数学原理到工业级避坑指南在深度学习模型的训练过程中,噪声和波动是影响最终性能的关键因素。指数移动平均(EMA)作为一种简单却强大的技术,能够有效平滑模型权重更新轨迹,提升模…

2026/7/7 6:25:46 阅读更多 →
本地部署AI生图与视频生成工具:免费无限制完整指南

本地部署AI生图与视频生成工具:免费无限制完整指南

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 这次我们来深入分析一款本地部署的AI生图和视频生成工具。从标题看,这款工具主打免费无限制、功能超越小云雀和即梦2.0等知…

2026/7/7 6:25:46 阅读更多 →
计算机毕业设计之jsp企业舆情监控与分析系统

计算机毕业设计之jsp企业舆情监控与分析系统

“互联网”的战略实施后,很多行业的信息化水平都有了很大的提升。但是目前很多企业日常工作仍是通过人工管理的方式进行,需要在各个岗位投入大量的人力进行很多重复性工作,这样就浪费了许多的人力物力,工作效率较低,同…

2026/7/7 6:25:46 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻