LangChain Visualizer测试与演示:无需API密钥也能体验的SERP代理示例
LangChain Visualizer测试与演示无需API密钥也能体验的SERP代理示例【免费下载链接】langchain-visualizerVisualization and debugging tool for LangChain workflows项目地址: https://gitcode.com/gh_mirrors/la/langchain-visualizerLangChain Visualizer是一个强大的LangChain工作流可视化与调试工具它能够让你直观地观察和理解AI代理的思考过程和执行流程。本文将详细介绍如何通过SERP代理示例快速体验LangChain Visualizer的强大功能即使没有API密钥也能进行完整的测试与演示。 为什么需要LangChain Visualizer在构建复杂的AI应用时理解LangChain代理的内部工作流程往往是一个挑战。传统的调试方式只能看到最终的输出结果而无法深入了解代理的决策过程、工具调用顺序以及提示词的完整内容。LangChain Visualizer解决了这个痛点它提供了完整的提示词可视化查看发送给LLM的完整提示文本执行流程跟踪观察代理的思考-行动-观察循环过程成本计算显示每个LLM调用的成本支持OpenAI的text-davinci-003模型实时监控在浏览器中实时查看代理执行过程LangChain Visualizer SERP代理执行界面 快速入门指南安装LangChain Visualizer首先通过pip安装LangChain Visualizer及其依赖pip install langchain-visualizer google-search-results openai如果你使用的是Linux系统可能需要先安装libyamlapt install -y libyaml-dev基础使用步骤使用LangChain Visualizer非常简单只需要三个步骤导入langchain_visualizer作为第一个导入编写异步函数来定义工作流调用visualize()函数 SERP代理示例详解示例代码分析让我们来看一个经典的SERP代理示例该示例演示了如何结合搜索引擎和数学计算工具来回答问题import langchain_visualizer import asyncio from langchain.agents import initialize_agent, load_tools from langchain.llms import OpenAI llm OpenAI(temperature0.7) tools load_tools([serpapi, llm-math], llmllm) agent initialize_agent(tools, llm, agentzero-shot-react-description, verboseTrue) async def search_agent_demo(): return agent.run( Who is Olivia Wildes boyfriend? What is his current age raised to the 0.23 power? ) langchain_visualizer.visualize(search_agent_demo)代理执行流程解析这个SERP代理示例展示了LangChain代理的完整工作流程问题理解代理首先分析问题识别出需要两个步骤搜索信息和数学计算搜索阶段使用SerpAPI搜索Olivia Wilde boyfriend获取信息信息提取从搜索结果中提取出Harry Styles作为答案二次搜索搜索Harry Styles age获取年龄信息数学计算使用计算器工具计算29的0.23次方最终回答整合所有信息生成最终答案 无需API密钥的测试方法使用vcr-langchain进行录制回放如果你没有OpenAI API密钥或SerpAPI密钥仍然可以体验LangChain Visualizer的功能。项目提供了vcr-langchain工具来录制和回放交互pip install vcr-langchain OPENAI_API_KEYdummy python tests/agents/test_langchain_getting_started.py这种方法使用预先录制的交互数据让你无需真实的API密钥就能看到完整的可视化效果。测试文件位置你可以在以下路径找到SERP代理的测试示例tests/agents/test_langchain_getting_started.pytests/agents/search_agent_demo.yaml 可视化功能深度解析提示词高亮显示LangChain Visualizer的一个关键特性是能够区分提示词中的硬编码部分和模板变量部分硬编码部分使用不同的颜色高亮显示模板变量清晰展示填充的内容完整上下文查看整个提示词的完整内容执行栈跟踪通过可视化界面你可以清晰地看到函数调用层次了解每个函数在调用栈中的位置执行时间线观察各个步骤的执行顺序和时间消耗工具调用时机准确看到工具被调用的时间点成本分析对于使用OpenAI text-davinci-003模型的调用LangChain Visualizer会显示每次调用的成本精确到每个LLM调用的费用总运行成本整个工作流的总消耗令牌使用情况输入和输出的令牌数量统计 Jupyter Notebook集成在Jupyter中使用LangChain Visualizer完美支持Jupyter Notebook环境只需要从不同的模块导入from langchain_visualizer.jupyter import visualizeNotebook示例项目提供了一个完整的Jupyter Notebook示例tests/demo.ipynb展示了如何在交互式环境中使用可视化功能。 高级配置选项自定义可视化参数你可以调整可视化窗口的大小和其他参数# 在Jupyter中自定义窗口大小 visualize(search_agent_demo, width1200, height600)嵌入可视化LangChain Visualizer还支持嵌入可视化让你可以在应用中查看文档分块和嵌入过程from langchain_visualizer import visualize, visualize_embeddings async def run_chain(): ... visualize_embeddings() visualize(run_chain) 与LangChain内置追踪器的对比LangChain Visualizer的优势更美观的UI界面基于ICE可视化框架提供更好的用户体验提示词高亮清晰区分模板变量和硬编码内容静态可视化当LLM调用被缓存时代理逻辑的可视化保持不变工具调用可见性可以看到底层工具如PythonREPL的实际调用内置追踪器的优势更好的官方支持LangChain官方维护的功能更广泛的功能覆盖支持更多的LangChain特性 最佳实践建议1. 导入顺序很重要确保import langchain_visualizer是你的Python入口文件中的第一个导入这样才能正确拦截和可视化所有的LangChain调用。2. 使用异步函数所有的可视化函数都需要包装在异步函数中确保事件循环的正确运行。3. 结合vcr-langchain进行测试对于开发和测试环境使用vcr-langchain可以避免真实的API调用同时提供一致的可视化体验。4. 合理设置温度参数在演示和调试时建议将LLM的温度参数设置为较低的值如0或0.1以获得更一致的结果。 注意事项功能覆盖范围请注意LangChain Visualizer目前可能无法覆盖所有的LangChain功能。如果你发现某些功能没有正确显示在可视化中可以查看项目文档了解当前支持的功能在GitHub仓库中提交issue考虑提交PR来添加对新功能的支持性能考虑可视化会增加一些运行时开销特别是在复杂的链式调用中。在生产环境中你可能需要根据实际情况决定是否启用可视化。 相关资源核心模块langchain_visualizer/visualize.py - 主要可视化功能实现langchain_visualizer/hijacking.py - LangChain组件拦截机制langchain_visualizer/jupyter.py - Jupyter Notebook支持示例代码tests/agents/ - 各种代理示例tests/chains/ - 链式调用示例tests/llms/ - LLM使用示例 总结LangChain Visualizer是一个极其有用的工具特别适合以下场景学习LangChain通过可视化理解代理的工作机制调试复杂工作流快速定位问题所在演示和教育向他人展示AI代理的思考过程优化提示词观察不同提示词对代理行为的影响通过本文介绍的SERP代理示例你已经掌握了如何使用LangChain Visualizer来可视化AI代理的执行过程。无论你是LangChain的新手还是经验丰富的开发者这个工具都能帮助你更好地理解和调试你的AI应用。记住即使没有API密钥你仍然可以通过vcr-langchain来体验完整的可视化功能。现在就开始使用LangChain Visualizer让你的LangChain开发体验更加直观和高效吧 【免费下载链接】langchain-visualizerVisualization and debugging tool for LangChain workflows项目地址: https://gitcode.com/gh_mirrors/la/langchain-visualizer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考