内容
# RAG-MCP
RAG与MCP
<img width="626" alt="image" src="https://github.com/user-attachments/assets/8ce8db41-a411-4d8a-9ade-6340f36d2d72" />
<img width="571" alt="image" src="https://github.com/user-attachments/assets/265820e0-8de1-450e-a874-1fb741f5de87" />
#### MCP Server 日志
(.venv) C:\Users\PLNAYAK\Documents\RAG_MCP>python mcp_server.py
启动 MCP 服务器...
服务器将在 http://localhost:8000 可用
INFO: 启动服务器进程 [31656]
INFO: 等待应用程序启动。
INFO: 应用程序启动完成。
INFO: Uvicorn 在 http://localhost:8000 运行(按 CTRL+C 退出)
INFO: ::1:52054 - "GET / HTTP/1.1" 404 未找到
INFO: ::1:52054 - "GET /sse HTTP/1.1" 200 OK
INFO: ::1:52057 - "GET /sse HTTP/1.1" 200 OK
INFO: ::1:52058 - "POST /messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb HTTP/1.1" 202 已接受
INFO: ::1:52058 - "POST /messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb HTTP/1.1" 202 已接受
INFO: ::1:52058 - "POST /messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb HTTP/1.1" 202 已接受
INFO:mcp.server.lowlevel.server:处理类型为 ListToolsRequest 的请求
INFO: ::1:52065 - "GET /sse HTTP/1.1" 200 OK
INFO: ::1:52066 - "POST /messages/?session_id=df7ff329724c434caace362c746400b5 HTTP/1.1" 202 已接受
INFO: ::1:52066 - "POST /messages/?session_id=df7ff329724c434caace362c746400b5 HTTP/1.1" 202 已接受
INFO: ::1:52066 - "POST /messages/?session_id=df7ff329724c434caace362c746400b5 HTTP/1.1" 202 已接受
INFO:mcp.server.lowlevel.server:处理类型为 CallToolRequest 的请求
INFO:__main__:处理查询:比较 PydanticAI 和 LangGraph
INFO:search:使用 Exa API 搜索网络。查询:比较 PydanticAI 和 LangGraph,结果:10
INFO:search:使用 Exa API 搜索网络。查询:比较 PydanticAI 和 LangGraph,结果:标题:Pydantic AI vs LangGraph – 选择 2025 年最佳数据验证工具!(完整概述!)
URL: https://www.youtube.com/watch?v=tAresTJB9cY
ID: https://www.youtube.com/watch?v=tAresTJB9cY
评分:0.3477572500705719
发布日期:2025-03-28T00:00:00.000Z
作者:Tobi Teaches
图片:https://i.ytimg.com/vi/tAresTJB9cY/maxresdefault.jpg
图标:https://www.youtube.com/s/desktop/fc303b88/img/logos/favicon_32x32.png
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:该 YouTube 视频比较了 Pydantic AI 和 LangGraph 在数据验证和语言处理方面的表现。它探讨了它们的功能、性能和用例,以帮助观众决定哪个工具最适合他们在 2025 年的项目。视频强调仅供教育目的,观众在做出决定之前应自行研究。
标题:LangChain vs LangGraph - AI 代理比较
URL: https://aiagentstore.ai/compare-ai-agents/langchain-vs-langgraph
ID: https://aiagentstore.ai/compare-ai-agents/langchain-vs-langgraph
评分:0.3429335057735443
发布日期:2025-01-01T00:00:00.000Z
作者:
图片:https://firebasestorage.googleapis.com/v0/b/aiagentstore.appspot.com/o/agentLogos%2Flangchain-langchain.png?alt=media&token=ad58b8c8-0dbb-4a20-92ee-f03b6a69eb6b
图标:https://aiagentstore.ai/logo.svg
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:LangGraph 和 LangChain 都是构建 AI 驱动工作流的框架,但满足不同需求。LangChain 更易于使用,社区更大,适合线性任务管道。LangGraph 采用基于图的方法,为复杂的非线性工作流提供更大的灵活性和自主性,支持分支和循环,但学习曲线较陡。两者都是开源的,但 LangChain 对于简单应用可能更具成本效益。
标题:使用 PydanticAI 和 LangGraph 框架构建的 AI 搜索代理
URL: https://medium.com/@kbdhunga/an-ai-search-agent-built-with-pydanticai-and-langgraph-frameworks-eea929dc665e
ID: https://medium.com/@kbdhunga/an-ai-search-agent-built-with-pydanticai-and-langgraph-frameworks-eea929dc665e
评分:无
发布日期:2025-01-27T04:11:37.000Z
作者:Kamal Dhungana
图片:https://miro.medium.com/v2/da:true/resize:fit:1200/0*y8BPx7D6XZYRLyrX
图标:https://miro.medium.com/v2/5d8de952517e8160e40ef9841c781cdc14a5db313057fa3c3de41c6f5b494b19
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:本文讨论了 AI 代理和构建它们的两个框架:Pydantic AI 和 LangGraph。Pydantic AI 通过与 Pydantic 集成进行数据验证,简化了 AI 应用程序的开发。LangGraph 是一个用于构建有状态的多参与者应用程序的库,适合复杂的代理工作流。
标题:PydanticAI + Langgraph:更智能 AI 代理的终极匹配!
URL: https://www.youtube.com/watch?v=P3qH5GVIxD0
ID: https://www.youtube.com/watch?v=P3qH5GVIxD0
评分:无
发布日期:2025-02-02T00:00:00.000Z
作者:YourTechBud Codes
图片:无
图标:https://www.youtube.com/s/desktop/fc303b88/img/logos/favicon_32x32.png
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:该 YouTube 视频探讨了 Langgraph 和 PydanticAI 的集成,以构建更智能的 AI 代理。它涵盖了 Langgraph 的基础知识、与 PydanticAI 的协同作用以简化工作流,并演示了使用这两个框架实现自我纠正 AI 的过程。关键主题包括调用工具、组合复杂工作流,以及理解 Langgraph 和 PydanticAI 之间的差异,以确定在特定项目中是否需要 Langgraph。视频还提供了 LangGraph 快速入门指南、演示者的代码、LangGraph 101 视频和 PydanticAI 视频的链接。
标题:如何使用 Pydantic Graph(LangGraph 的替代方案)– Bartosz Mikulski | 你的 AI 正在对客户撒谎。让我们在它公开之前修复它。
URL: https://mikulskibartosz.name/pydantic-graph
ID: https://mikulskibartosz.name/pydantic-graph
评分:0.33789506554603577
发布日期:2025-05-18T00:00:00.000Z
作者:Bartosz Mikulski
图片:无
图标:无
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:Pydantic Graph 被提出作为 LangGraph 的潜在替代方案,强调其优越的文档和对类型提示的依赖。然而,它被认为是为高级用户设计的,可能对于简单应用来说过于复杂。文章概述了 Pydantic Graph 的以下关键方面:
* **安装:** 该库作为单独的包(`pydantic-graph`)安装,可以独立于 `pydantic-ai` 使用。
* **基本结构:** 图是由继承自 `BaseNode` 的类构建的,具有一个 `run` 方法来确定下一个要执行的节点。
* **图执行:** 图根据 `run` 方法的返回值执行节点,允许灵活的图结构和预定义路径。
标题:LangGraph 与 PydanticAI 比较
URL: https://sourceforge.net/software/compare/LangGraph-vs-PydanticAI/
ID: https://sourceforge.net/software/compare/LangGraph-vs-PydanticAI/
评分:无
发布日期:2025-01-01T00:00:00.000Z
作者:
图片:无
图标:https://a.fsdn.com/con/img/sandiego/logo-180x180.png
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:该网页比较了 LangGraph 和 PydanticAI,但提供的文本集中在相关产品上:Sendbird(一个全渠道 AI 代理平台)、Vertex AI(用于构建、部署和扩展机器学习模型)、Jotform(一个无代码的数据收集平台,配备 AI 驱动的代理)和 Stack AI(用于与用户互动并使用内部数据和 API 完成任务的 AI 代理)。主要目的是展示 AI 和自动化领域的替代方案和相关工具。
标题:Pydantic AI vs LangGraph - 哪个数据工具更好?(2025)
URL: https://www.youtube.com/watch?v=e0kn7JMH_No
ID: https://www.youtube.com/watch?v=e0kn7JMH_No
评分:0.33769291639328003
发布日期:2025-04-24T00:00:00.000Z
作者:Skillcraft AI
图片:无
图标:https://www.youtube.com/s/desktop/1520a82c/img/logos/favicon_32x32.png
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:该 YouTube 视频比较了 Pydantic AI 和 LangGraph,以帮助观众选择适合其 AI 或数据工作流项目的工具。它鼓励观众通过提供的链接访问 AI 工具、折扣和网络研讨会。
标题:LangChain 与 PydanticAI 构建 AI 代理的比较 - Finn Andersen - Medium
URL: https://medium.com/@finndersen/langchain-vs-pydanticai-for-building-an-ai-agent-e0a059435e9d
ID: https://medium.com/@finndersen/langchain-vs-pydanticai-for-building-an-ai-agent-e0a059435e9d
评分:无
发布日期:2025-01-29T11:48:36.000Z
作者:Finn Andersen
图片:https://miro.medium.com/v2/resize:fit:1200/1*g787VN00jm0lQrbjcy7Yag.png
图标:https://miro.medium.com/v2/5d8de952517e8160e40ef9841c781cdc14a5db313057fa3c3de41c6f5b494b19
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:本文比较了 LangChain 和 PydanticAI,以构建具有动态模型选择、人机交互输入、工具调用、对话历史、动态系统提示和结构化输出的对话 AI 代理。它以 AI 服务员在餐厅点餐的例子为基础。作者发现 PydanticAI 比 LangChain 更易于接近和直观,而后者因其复杂性和遗留内容而显得令人生畏。作者随后在两个框架中构建了相同的演示项目,以比较两者。
标题:AutoGen vs CrewAI vs LangGraph vs PydanticAI vs Google ADK vs OpenAI Agents .... 哪个多代理框架最好?
URL: https://newsletter.victordibia.com/p/autogen-vs-crewai-vs-langgraph-vs
ID: https://newsletter.victordibia.com/p/autogen-vs-crewai-vs-langgraph-vs
评分:无
发布日期:2025-04-30T23:51:34.000Z
作者:Victor Dibia, PhD
图片:https://substackcdn.com/image/fetch/w_1200,h_600,c_fill,f_jpg,q_auto:good,fl_progressive:steep,g_auto/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd200bddf-a22c-42f6-bba9-5b902b62d970_1804x1341.png
图标:https://substackcdn.com/image/fetch/f_auto%2Cq_auto%3Agood%2Cfl_progressive%3Asteep/https%3A//substack-post-media.s3.amazonaws.com/public/images/4904f99a-6f96-4d8d-b190-e683752e69e6/favicon-32x32.png
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:本文比较了六个多代理框架——AutoGen、Google ADK、LangGraph、LLamaIndex、OpenAI Agents SDK 和 PydanticAI——在开发者体验、异步能力和状态管理等 10 个维度上的表现。它包括一个交互式工具,展示每个框架的“Hello World”代理实现,允许用户查看代码、比较实现,并查看代码行数和运行时间等定量指标。文章还链接到一篇相关的文章,详细说明了用于比较的 10 个维度以及关于框架是否必要的指导。
标题:LangGraph:它是什么以及如何使用它 [教程]
URL: https://lazyprogrammer.me/langgraph/
ID: https://lazyprogrammer.me/langgraph/
评分:0.34060370922088623
发布日期:2025-01-18T04:31:14.000Z
作者:Lazy Marketing
图片:https://lazyprogrammer.me/wp-content/uploads/2025/01/image_fx_-43.png
图标:无
附加信息:无
子页面:无
文本:无
亮点:无
亮点评分:无
摘要:LangGraph 是一个用于构建能够处理复杂任务和工作流的 AI 代理的框架。它支持创建多代理系统,其中多个 AI 代理协作,分配任务并共同工作。LangGraph 通过 LangChain 生态系统与工具和平台集成,可用于客户支持自动化和电子商务。
Autoprompt 字符串:比较 PydanticAI 和 LangGraph
已解析搜索类型:neural
费用(美元):总计=0.015
- 搜索:{'neural': 0.005}
- 内容:{'summary': 0.01}
2025-06-01 22:02:41.242 警告 streamlit.runtime.scriptrunner_utils.script_run_context: 线程 'MainThread':缺少 ScriptRunContext!在裸模式下运行时可以忽略此警告。
2025-06-01 22:02:41.243 警告 streamlit.runtime.state.session_state_proxy: 在没有 `streamlit run` 的情况下运行脚本时,Session 状态无法正常工作
2025-06-01 22:02:41.243 警告 streamlit.runtime.scriptrunner_utils.script_run_context: 线程 'MainThread':缺少 ScriptRunContext!在裸模式下运行时可以忽略此警告。
信息:搜索:格式化搜索结果
信息:搜索:找到 10 个搜索结果
信息:rag:从 10 个 URL 创建 RAG
信息:rag:并行处理 URL
信息:搜索:从 URL 获取内容:https://www.youtube.com/watch?v=tAresTJB9cY
信息:搜索:解析来自 https://www.youtube.com/watch?v=tAresTJB9cY 的 HTML 内容
信息:搜索:成功从 https://www.youtube.com/watch?v=tAresTJB9cY 提取 244 个字符
信息:搜索:从 URL 获取内容:https://aiagentstore.ai/compare-ai-agents/langchain-vs-langgraph
信息:搜索:解析来自 https://aiagentstore.ai/compare-ai-agents/langchain-vs-langgraph 的 HTML 内容
信息:搜索:成功从 https://aiagentstore.ai/compare-ai-agents/langchain-vs-langgraph 提取 5769 个字符
信息:搜索:从 URL 获取内容:https://medium.com/@kbdhunga/an-ai-search-agent-built-with-pydanticai-and-langgraph-frameworks-eea929dc665e
信息:搜索:解析来自 https://medium.com/@kbdhunga/an-ai-search-agent-built-with-pydanticai-and-langgraph-frameworks-eea929dc665e 的 HTML 内容
信息:搜索:成功从 https://medium.com/@kbdhunga/an-ai-search-agent-built-with-pydanticai-and-langgraph-frameworks-eea929dc665e 提取 1970 个字符
信息:搜索:从 URL 获取内容:https://www.youtube.com/watch?v=P3qH5GVIxD0
信息:搜索:解析来自 https://www.youtube.com/watch?v=P3qH5GVIxD0 的 HTML 内容
信息:搜索:成功从 https://www.youtube.com/watch?v=P3qH5GVIxD0 提取 221 个字符
信息:搜索:从 URL 获取内容:https://mikulskibartosz.name/pydantic-graph
信息:搜索:解析来自 https://mikulskibartosz.name/pydantic-graph 的 HTML 内容
信息:搜索:成功从 https://mikulskibartosz.name/pydantic-graph 提取 10621 个字符
信息:搜索:从 URL 获取内容:https://sourceforge.net/software/compare/LangGraph-vs-PydanticAI/
错误:搜索:连接错误 https://sourceforge.net/software/compare/LangGraph-vs-PydanticAI/:HTTPSConnectionPool(host='sourceforge.net', port=443):超出最大重试次数,URL:/software/compare/LangGraph-vs-PydanticAI/(由 SSLError(SSLError(1, '[SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:992)'))引起)
信息:搜索:从 URL 获取内容:https://www.youtube.com/watch?v=e0kn7JMH_No
信息:搜索:解析来自 https://www.youtube.com/watch?v=e0kn7JMH_No 的 HTML 内容
信息:搜索:成功从 https://www.youtube.com/watch?v=e0kn7JMH_No 提取 216 个字符
信息:搜索:从 URL 获取内容:https://medium.com/@finndersen/langchain-vs-pydanticai-for-building-an-ai-agent-e0a059435e9d
信息:搜索:解析来自 https://medium.com/@finndersen/langchain-vs-pydanticai-for-building-an-ai-agent-e0a059435e9d 的 HTML 内容
信息:搜索:成功从 https://medium.com/@finndersen/langchain-vs-pydanticai-for-building-an-ai-agent-e0a059435e9d 提取 18351 个字符
信息:搜索:从 URL 获取内容:https://newsletter.victordibia.com/p/autogen-vs-crewai-vs-langgraph-vs
信息:搜索:解析来自 https://newsletter.victordibia.com/p/autogen-vs-crewai-vs-langgraph-vs 的 HTML 内容
信息:搜索:成功从 https://newsletter.victordibia.com/p/autogen-vs-crewai-vs-langgraph-vs 提取 10491 个字符
信息:搜索:从 URL 获取内容:https://lazyprogrammer.me/langgraph/
信息:搜索:解析来自 https://lazyprogrammer.me/langgraph/ 的 HTML 内容
信息:搜索:成功从 https://lazyprogrammer.me/langgraph/ 提取 9506 个字符
信息:rag:检索到 9 个有效文档
信息:rag:将文档拆分为块
信息:rag:创建了 37 个块
信息:rag:创建向量存储
信息:httpx:HTTP 请求:POST http://localhost:11434/api/embed "HTTP/1.1 200 OK"
信息:faiss.loader:加载支持 AVX2 的 faiss。
信息:faiss.loader:成功加载支持 AVX2 的 faiss。
信息:faiss:未能加载 GPU Faiss:名称 'GpuIndexIVFFlat' 未定义。将不加载 GPU 索引的构造函数引用。
信息:rag:向量存储成功创建
信息:rag:使用查询搜索 RAG:比较 PydanticAI 和 LangGraph
信息:httpx:HTTP 请求:POST http://localhost:11434/api/embed "HTTP/1.1 200 OK"
信息:rag:找到 5 个相关文档
#### Streamlit 日志
.venv) C:\Users\PLNAYAK\Documents\RAG_MCP>streamlit run streamlit_app.py
现在您可以在浏览器中查看您的 Streamlit 应用。
本地 URL: http://localhost:8501
网络 URL: http://192.168.1.2:8501
```
2025-06-01 22:02:22,880 - langchain_client - INFO - 正在初始化 LangchainMCPClient...
2025-06-01 22:02:22,895 - langchain_client - INFO - 正在连接到 MCP 服务器 http://localhost:8000...
2025-06-01 22:02:22,895 - langchain_client - INFO - 正在初始化代理...
2025-06-01 22:02:22,896 - langchain_client - INFO - 正在测试与 http://localhost:8000 的连接...
2025-06-01 22:02:22,913 - httpx - INFO - HTTP 请求: GET http://localhost:8000 "HTTP/1.1 404 Not Found"
2025-06-01 22:02:22,914 - langchain_client - INFO - 基础端点响应: 404
2025-06-01 22:02:22,914 - langchain_client - INFO - 正在检查 SSE 端点 http://localhost:8000/sse...
2025-06-01 22:02:22,917 - httpx - INFO - HTTP 请求: GET http://localhost:8000/sse "HTTP/1.1 200 OK"
2025-06-01 22:02:27,928 - langchain_client - INFO - SSE 端点超时 - 这在 SSE 中是正常的
2025-06-01 22:02:27,929 - langchain_client - INFO - 正在获取可用工具...
2025-06-01 22:02:27,929 - mcp.client.sse - INFO - 正在连接到 SSE 端点: http://localhost:8000/sse
2025-06-01 22:02:27,943 - httpx - INFO - HTTP 请求: GET http://localhost:8000/sse "HTTP/1.1 200 OK"
2025-06-01 22:02:27,943 - mcp.client.sse - INFO - 收到端点 URL: http://localhost:8000/messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb
2025-06-01 22:02:27,944 - mcp.client.sse - INFO - 正在使用端点 URL 启动发布写入器: http://localhost:8000/messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb
2025-06-01 22:02:27,949 - httpx - INFO - HTTP 请求: POST http://localhost:8000/messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb "HTTP/1.1 202 Accepted"
2025-06-01 22:02:27,952 - httpx - INFO - HTTP 请求: POST http://localhost:8000/messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb "HTTP/1.1 202 Accepted"
2025-06-01 22:02:27,954 - httpx - INFO - HTTP 请求: POST http://localhost:8000/messages/?session_id=46ddd1414d8e42c4aafde1a2c4407adb "HTTP/1.1 202 Accepted"
2025-06-01 22:02:27,956 - langchain_client - INFO - 已初始化 1 个工具
2025-06-01 22:02:27,956 - langchain_client - INFO - 代理初始化完成
2025-06-01 22:02:37,051 - langchain_client - INFO -
==================================================
2025-06-01 22:02:37,051 - langchain_client - INFO - 正在处理新查询
2025-06-01 22:02:37,051 - langchain_client - INFO - ==================================================
2025-06-01 22:02:37,051 - langchain_client - INFO - 用户查询: 比较 PydanticAI 和 LangGraph
2025-06-01 22:02:37,053 - mcp.client.sse - INFO - 正在连接到 SSE 端点: http://localhost:8000/sse
2025-06-01 22:02:37,075 - httpx - INFO - HTTP 请求: GET http://localhost:8000/sse "HTTP/1.1 200 OK"
2025-06-01 22:02:37,076 - mcp.client.sse - INFO - 收到端点 URL: http://localhost:8000/messages/?session_id=df7ff329724c434caace362c746400b5
2025-06-01 22:02:37,077 - mcp.client.sse - INFO - 正在使用端点 URL 启动发布写入器: http://localhost:8000/messages/?session_id=df7ff329724c434caace362c746400b5
2025-06-01 22:02:37,081 - httpx - INFO - HTTP 请求: POST http://localhost:8000/messages/?session_id=df7ff329724c434caace362c746400b5 "HTTP/1.1 202 Accepted"
2025-06-01 22:02:37,083 - httpx - INFO - HTTP 请求: POST http://localhost:8000/messages/?session_id=df7ff329724c434caace362c746400b5 "HTTP/1.1 202 Accepted"
2025-06-01 22:02:37,086 - httpx - INFO - HTTP 请求: POST http://localhost:8000/messages/?session_id=df7ff329724c434caace362c746400b5 "HTTP/1.1 202 Accepted"
2025-06-01 22:03:00,077 - langchain_client - INFO -
==================================================
2025-06-01 22:03:00,077 - langchain_client - INFO - 来自 MCP 服务器的原始结果
2025-06-01 22:03:00,077 - langchain_client - INFO - ==================================================
2025-06-01 22:03:00,077 - langchain_client - INFO - {
"search_results": "搜索结果:\n\n1. [Pydantic AI vs LangGraph – 选择合适的数据验证工具 (2025年全面概述!)](https://www.youtube.com/watch?v=tAresTJB9cY) (发布时间: 2025-03-28T00:00:00.000Z)\n\n摘要: 该 YouTube 视频比较了 Pydantic AI 和 LangGraph 在数据验证和语言处理方面的表现。它探讨了它们的特性、性能和用例,以帮助观众决定哪个工具最适合他们在 2025 年的项目。视频强调这仅用于教育目的,观众在做出决定之前应自行研究。\n\n\n2. [LangChain vs LangGraph - AI 代理比较](https://aiagentstore.ai/compare-ai-agents/langchain-vs-langgraph) (发布时间: 2025-01-01T00:00:00.000Z)\n\n摘要: LangGraph 和 LangChain 都是构建 AI 驱动工作流的框架,但满足不同需求。LangChain 更易于使用,社区更大,适合线性任务管道。LangGraph 采用基于图的方式,为复杂的非线性工作流提供更大的灵活性和自主性,支持分支和循环,但学习曲线较陡。两者都是开源的,但对于简单应用,LangChain 可能更具成本效益。\n\n\n3. [使用 PydanticAI 和 LangGraph 框架构建的 AI 搜索代理](https://medium.com/@kbdhunga/an-ai-search-agent-built-with-pydanticai-and-langgraph-frameworks-eea929dc665e) (发布时间: 2025-01-27T04:11:37.000Z)\n\n摘要: 本文讨论了 AI 代理和构建它们的两个框架:Pydantic AI 和 LangGraph。Pydantic AI 通过与 Pydantic 集成进行数据验证,简化了 AI 应用程序的开发。LangGraph 是一个用于构建有状态的多参与者应用程序的库,适合复杂的代理工作流。\n\n\n4. [PydanticAI + Langgraph: 更智能 AI 代理的终极组合!](https://www.youtube.com/watch?v=P3qH5GVIxD0) (发布时间: 2025-02-02T00:00:00.000Z)\n\n摘要: 该 YouTube 视频探讨了 Langgraph 和 PydanticAI 的集成,以构建更智能的 AI 代理。它涵盖了 Langgraph 的基础知识、与 PydanticAI 的协同作用以简化工作流,并演示了使用这两个框架实现自我纠正 AI 的过程。关键主题包括调用工具、组合复杂工作流,以及理解 Langgraph 和 PydanticAI 之间的差异,以确定在特定项目中是否需要 Langgraph。视频还提供了 LangGraph 快速入门指南、演示者的代码、LangGraph 101 视频和 PydanticAI 视频的链接。\n\n\n5. [如何使用 Pydantic Graph(LangGraph 的替代品) - Bartosz Mikulski | 你的 AI 正在对客户撒谎。让我们在它公开之前修复它。](https://mikulskibartosz.name/pydantic-graph) (发布时间: 2025-05-18T00:00:00.000Z)\n\n摘要: Pydantic Graph 被提出作为 LangGraph 的潜在替代品,强调其更优越的文档和对类型提示的依赖。然而,它被认为是为高级用户设计的,可能对于简单应用来说过于复杂。文章概述了 Pydantic Graph 的以下关键方面:\n\n* **安装:** 该库作为单独的包(`pydantic-graph`)安装,可以独立于 `pydantic-ai` 使用。\n* **基本结构:** 图是由继承自 `BaseNode` 的类构建的,具有一个 `run` 方法来确定下一个要执行的节点。\n* **图执行:** 图根据 `run` 方法的返回值执行节点,允许具有预定义路径的灵活图结构。\n\n\n• Pydantic Graph 被提出作为 LangGraph 的潜在替代品,强调其更优越的文档和对类型提示的依赖。然而,它被认为是为高级用户设计的,可能对于简单应用来说过于复杂。文章概述了 Pydantic Graph 的以下关键方面:\n\n* **安装:** 该库作为单独的包(`pydantic-graph`)安装,可以独立于 `pydantic-ai` 使用。\n* **基本结构:** 图是由继承自 `BaseNode` 的类构建的,具有一个 `run` 方法来确定下一个要执行的节点。\n* **图执行:** 图根据 `run` 方法的返回值执行节点,允许具有预定义路径的灵活图结构。\n\n6. [LangGraph vs. PydanticAI 比较](https://sourceforge.net/software/compare/LangGraph-vs-PydanticAI/) (发布时间: 2025-01-01T00:00:00.000Z)\n\n摘要: 本网页比较了 LangGraph 和 PydanticAI,但提供的文本集中于相关产品:Sendbird(一个全渠道 AI 代理平台)、Vertex AI(用于构建、部署和扩展 ML 模型)、Jotform(一个无代码的数据收集平台,配备 AI 驱动的代理)和 Stack AI(用于与用户互动并使用内部数据和 API 完成任务的 AI 代理)。主要目的是展示 AI 和自动化领域的替代方案和相关工具。\n\n\n7. [Pydantic AI vs LangGraph - 哪个数据工具更好? (2025)](https://www.youtube.com/watch?v=e0kn7JMH_No) (发布时间: 2025-04-24T00:00:00.000Z)\n\n摘要: 该 YouTube 视频比较了 Pydantic AI 和 LangGraph,以帮助观众选择适合其 AI 或数据工作流项目的工具。它鼓励观众通过提供的链接访问 AI 工具、折扣和网络研讨会。\n\n\n8. [LangChain vs PydanticAI 用于构建 AI 代理 - Finn Andersen - Medium](https://medium.com/@finndersen/langchain-vs-pydanticai-for-building-an-ai-agent-e0a059435e9d) (发布时间: 2025-01-29T11:48:36.000Z)\n\n摘要: 本文比较了 LangChain 和 PydanticAI,用于构建具有动态模型选择、人机交互输入、工具调用、对话历史、动态系统提示和结构化输出的对话 AI 代理。它使用 AI 服务员在餐厅点餐的例子。作者发现 PydanticAI 比 LangChain 更易于接近和直观,而后者由于其复杂性和遗留内容被描述为令人生畏。作者随后在两个框架中构建了相同的演示项目,以比较两者。\n\n\n9. [AutoGen vs CrewAI vs LangGraph vs PydanticAI vs Google ADK vs OpenAI Agents .... 哪个多代理框架最好?](https://newsletter.victordibia.com/p/autogen-vs-crewai-vs-langgraph-vs) (发布时间: 2025-04-30T23:51:34.000Z)\n\n摘要: 本文比较了六个多代理框架——AutoGen、Google ADK、LangGraph、LLamaIndex、OpenAI Agents SDK 和 PydanticAI——在开发者体验、异步能力和状态管理等 10 个维度上的表现。它包括一个交互式工具,展示每个框架的“Hello World”代理实现,允许用户查看代码、比较实现,并查看代码行数和运行时等定量指标。文章还链接到一篇相关的文章,详细说明了用于比较的 10 个维度以及关于框架是否必要的指导。\n\n\n10. [LangGraph: 它是什么以及如何使用 [教程]](https://lazyprogrammer.me/langgraph/) (发布时间: 2025-01-18T04:31:14.000Z)\n\n摘要: LangGraph 是一个用于构建能够处理复杂任务和工作流的 AI 代理的框架。它使得创建多代理系统成为可能,其中多个 AI 代理协作,分配任务并共同工作。LangGraph 通过 LangChain 生态系统与工具和平台集成,可用于客户支持自动化和电子商务。\n\n",
"rag_analysis": [
{
"content": "Pydantic AI vs LangGraph - 哪个数据工具更好? (2025) - YouTube\n关于\n新闻\n版权\n联系我们\n创作者\n广告\n开发者\n条款\n隐私\n政策与安全\nYouTube 的工作原理\n测试新功能\n© 2025 Google LLC",
"metadata": {
"source": "https://www.youtube.com/watch?v=e0kn7JMH_No"
}
},
{
"content": "如何使用 Pydantic Graph(LangGraph 的替代品)\nBartosz Mikulski | 你的 AI 正在对客户撒谎。让我们在它公开之前修复它。\n咨询\n知识库\n工程博客\nAI 用例\n工具\nAI 准备评估工具\n关于我\n新闻通讯\nAI\nPydanticAI\n如何使用 Pydantic Graph(LangGraph 的替代品)\n使用 Pydantic Graph 的指南 - 一种类型安全的替代方案,用于构建 AI 工作流。\nBartosz Mikulski\n2025年2月24日\nâ 10分钟阅读\nPydantic Graph 可能是 LangGraph 的更好替代品。毫无疑问,Pydantic Graph 的文档要好得多,但如果你将任何文档与 LangChain 的文档进行比较,你就把标准设得很低。那么,它还有什么其他优势呢?与每个 Pydantic 项目一样,类型提示!然而,图可能是过于复杂。PydanticAI 的作者在文档中指出:â如果你不确定基于图的方法是否合适,那么它可能是不必要的。â并且âpydantic-graph 是为高级用户设计的,重度使用 Python 泛型和类型提示。它并不是为了像 PydanticAI 那样对初学者友好。â如果这并没有吓到你,让我们看看如何使用它。\n目录\nPydantic Graph 安装\nPydantic Graph 的基本图结构\n具有状态的图\n向图中添加 AI 代理\n监控和调试\n还有一件事。图支持处于非常早期的测试阶段。如果你在发布几个月后阅读这篇文章,而代码不再工作,请告诉我,我会更新文本。\nPydantic Graph 安装\n图形库作为单独的包提供:\npydantic-graph\n。它不依赖于\npydantic-ai\n,因此如果你想使用 AI 代理,必须同时安装两者。然而,缺乏依赖关系使得可以将\npydantic-graph\n库用于任何需要基于图的状态机或工作流的项目。\n我将使用 OpenAI API,因此我需要安装 PydanticAI 客户端。\npip\ninstall",
"metadata": {
"source": "https://mikulskibartosz.name/pydantic-graph"
}
},
{
"content": "PydanticAI + Langgraph: 更智能 AI 代理的终极组合! - YouTube\n关于\n新闻\n版权\n联系我们\n创作者\n广告\n开发者\n条款\n隐私\n政策与安全\nYouTube 的工作原理\n测试新功能\n© 2025 Google LLC",
"metadata": {
"source": "https://www.youtube.com/watch?v=P3qH5GVIxD0"
}
},
{
"content": "Pydantic AI vs LangGraph – 选择合适的数据验证工具 (2025年全面概述!) - YouTube\n关于\n新闻\n版权\n联系我们\n创作者\n广告\n开发者\n条款\n隐私\n政策与安全\nYouTube 的工作原理\n测试新功能\n© 2025 Google LLC",
"metadata": {
"source": "https://www.youtube.com/watch?v=tAresTJB9cY"
}
},
{
```
```python
"content": "def __init__(self, menu_service: MenuService, order_service: OrderService, args: argparse.Namespace):\n# 初始化带有依赖项的工具\ntools = [\nGetMenuTool(menu_service=menu_service),\nCreateOrderTool(order_service=order_service),\nStructuredResponseTool(),\n]\nself.agent_executor = get_agent_executor(tools=tools, model_name=args.model, api_key=args.api_key)\nself.static_input_content = {\"restaurant_name\": args.restaurant_name, \"table_number\": args.table_number}\nself.config: RunnableConfig = {\"configurable\": {\"session_id\": \"not-even-used\"}}\ndef make_request(self, user_message: str) -> LLMResponse:\nresult = self.agent_executor.invoke(self.static_input_content | {\"input\": user_message}, self.config)\n# 将结构化响应反序列化为LLMResponse\nresponse = LLMResponse.model_validate_json(result[\"output\"])\nreturn response\n结论\n本演示表明,使用PydanticAI框架创建一个基本的对话和工具调用AI代理要比使用LangChain简单得多。LangChain有太多过时功能的层次,急需进行大规模的清理。\n我还想启用流式响应,但在使用LangChain进行工具调用和结构化输出时,这似乎相当困难。\n我想,更新的LangGraph方法在创建代理时解决了这里遇到的许多限制和挫折。PydanticAI最近也添加了一个\ngraph library\n,因此下次我将探索这两个框架的完整图形实现。\n我希望这能帮助任何想在框架之间做出选择或学习如何使用它们构建酷炫事物的人!\n完整的项目代码库可以在\n这里\n找到。\nLangchain\nLlm\nAI\nPydantic Ai\nAi Agent\n--\n--\n4\n关注\n作者\nFinn Andersen\n221 关注者\n·\n22 正在关注\n技术项目和我脑海中的其他事情\n关注\n回复(\n4\n)\n查看所有回复\n帮助\n状态\n关于\n职业\n新闻\n博客\n隐私\n规则\n条款",
"metadata": {
"source": "https://medium.com/@finndersen/langchain-vs-pydanticai-for-building-an-ai-agent-e0a059435e9d"
}
```
## RAG 分析
<img width="1250" alt="image" src="https://github.com/user-attachments/assets/0115d097-278e-48e9-888e-ed54abcaa1d9" />
## 文档块
<img width="1279" alt="image" src="https://github.com/user-attachments/assets/f82af26f-24eb-4973-8c4a-cd48f5ca22f4" />
连接信息
猜你喜欢
暂无推荐服务器