[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-nirbar1985--ai-travel-agent":3,"tool-nirbar1985--ai-travel-agent":62},[4,18,26,36,46,54],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",160784,2,"2026-04-19T11:32:54",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":42,"last_commit_at":43,"category_tags":44,"status":17},8272,"opencode","anomalyco\u002Fopencode","OpenCode 是一款开源的 AI 编程助手（Coding Agent），旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件，而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码，还是排查难以定位的 Bug，OpenCode 都能通过自然语言交互高效完成，显著减少开发者在重复性劳动和上下文切换上的时间消耗。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构，这意味着用户可以审查代码逻辑、自定义行为策略，甚至私有化部署以保障数据安全，彻底打破了传统闭源 AI 助手的“黑盒”限制。\n\n在技术体验上，OpenCode 提供了灵活的终端界面（Terminal UI）和正在测试中的桌面应用程序，支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具，安装便捷，并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客，还是渴望提升产出的独立开发者，OpenCode 都提供了一个透明、可信",144296,1,"2026-04-16T14:50:03",[13,45],"插件",{"id":47,"name":48,"github_repo":49,"description_zh":50,"stars":51,"difficulty_score":32,"last_commit_at":52,"category_tags":53,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",109154,"2026-04-18T11:18:24",[14,15,13],{"id":55,"name":56,"github_repo":57,"description_zh":58,"stars":59,"difficulty_score":32,"last_commit_at":60,"category_tags":61,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[45,13,15,14],{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":74,"owner_company":74,"owner_location":74,"owner_email":74,"owner_twitter":74,"owner_website":74,"owner_url":76,"languages":77,"stars":82,"forks":83,"last_commit_at":84,"license":85,"difficulty_score":32,"env_os":86,"env_gpu":86,"env_ram":86,"env_deps":87,"category_tags":98,"github_topics":74,"view_count":32,"oss_zip_url":74,"oss_zip_packed_at":74,"status":17,"created_at":99,"updated_at":100,"faqs":101,"releases":130},9672,"nirbar1985\u002Fai-travel-agent","ai-travel-agent","AI Travel Agent","ai-travel-agent 是一款基于 LangGraph 构建的智能旅行助手开源项目，旨在通过多模型协作自动化完成复杂的行程规划任务。它解决了传统旅行搜索中信息分散、预订流程繁琐以及缺乏个性化统筹的痛点，能够一站式处理航班查询、酒店筛选及行程邮件发送等全流程需求。\n\n该项目特别适合具备一定 Python 基础的开发者和技术爱好者使用，可用于学习如何构建生产级的 AI Agent 应用，或作为定制企业级旅行服务的参考模板。普通用户若具备环境配置能力，也可将其部署为私人旅行顾问。\n\n其核心技术亮点在于“有状态交互”与“人机协同（Human-in-the-Loop）”机制。ai-travel-agent 不仅能记忆上下文以实现流畅的多轮对话，还能在发送确认邮件等关键节点暂停，将控制权交还用户进行审核，确保操作安全可控。此外，它能根据任务类型智能切换不同的大语言模型，并自动整合 Google 航班与酒店数据，生成包含直观图标和链接的 HTML 格式行程单，直接发送至用户邮箱，极大提升了旅行规划的效率与体验。","# ✈️🧳 AI Travel Agent - Powered by LangGraph: A Practical Use Case 🌍\nWelcome to the AI Travel Agent repository! This project demonstrates how to leverage LangGraph for building a smart travel assistant that uses multiple language models (LLMs) to handle tasks such as finding flights, booking hotels, and sending personalized emails. The agent is designed to interact with users, invoke necessary tools, and provide a seamless travel planning experience.\n\n## **Features**\n\n- **Stateful Interactions**: The agent remembers user interactions and continues from where it left off, ensuring a smooth user experience.\n- **Human-in-the-Loop**: Users have control over critical actions, like reviewing travel plans before emails are sent.\n- **Dynamic LLM Usage**: The agent intelligently switches between different LLMs for various tasks, like tool invocation and email generation.\n- **Email Automation**: Automatically generates and sends detailed travel plans to users via email.\n\n## Getting Started\nClone the repository, set up the virtual environment, and install the required packages\n\n1. git clone git@github.com:nirbar1985\u002Fai-travel-agent.git\n\n1. ( In case you have python version 3.11.9 installed in pyenv)\n   ```shell script\n   pyenv local 3.11.9\n   ```\n\n1. Install dependencies\n    ```shell script\n    poetry install --sync\n    ```\n\n1. Enter virtual env by:\n    ```shell script\n    poetry shell\n    ```\n\n## **Store Your API Keys**\n\n1. Create a `.env` file in the root directory of the project.\n2. Add your API keys and environment variables to the `.env` file:\n    ```plaintext\n    OPENAI_API_KEY=your_openai_api_key\n    SERPAPI_API_KEY=your_serpapi_api_key\n    SENDGRID_API_KEY=your_sendgrid_api_key\n\n    # Observability variables\n    LANGCHAIN_API_KEY=your_langchain_api_key\n    LANGCHAIN_TRACING_V2=true\n    LANGCHAIN_PROJECT=ai_travel_agent\n    ```\n\nMake sure to replace the placeholders (`your_openai_api_key`, `your_serpapi_api_key`, `your_langchain_api_key`, `your_sendgrid_api_key`) with your actual keys.\nThis version includes the necessary environment variables for OpenAI, SERPAPI, LangChain, and SendGrid and the LANGCHAIN_TRACING_V2 and LANGCHAIN_PROJECT configurations.\n\n### How to Run the Chatbot\nTo start the chatbot, run the following command:\n```\nstreamlit run app.py\n```\n\n### Using the Chatbot\nOnce launched, simply enter your travel request. For example:\n> I want to travel to Amsterdam from Madrid from October 1st to 7th. Find me flights and 4-star hotels.\n\n\n![photo1](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_11a3ce753b44.png)\n\nThe chatbot will generate results that include logos and links for easy navigation.\n\n> **Note**: The data is fetched via Google Flights and Google Hotels APIs. There’s no affiliation or promotion of any particular brand.\n\n\n#### Example Outputs\n\n- Flight and hotel options with relevant logos and links for easy reference:\n\n![photo2](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_badcdc4d3a01.png)\n\n![photo3](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_44cdbc92ab1b.png)\n\n\n#### Email Integration\nThe email integration is implemented using the **human-in-the-loop** feature, allowing you to stop the agent execution and return control back to the user, providing flexibility in managing the travel data before sending it via email.\n\n![photo4](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_faf1f26c500c.png)\n\n- Travel data formatted in HTML, delivered straight to your inbox:\n![photo5](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_73170962a4f3.png)\n![photo6](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_ce5b1d42614e.png)\n\n## Learn More\nFor a detailed explanation of the underlying technology, check out the full article on Medium:\n[Building Production-Ready AI Agents with LangGraph: A Real-Life Use Case](https:\u002F\u002Fmedium.com\u002Fcyberark-engineering\u002Fbuilding-production-ready-ai-agents-with-langgraph-a-real-life-use-case-7bda34c7f4e4))\n\n## License\nDistributed under the MIT License. See LICENSE.txt for more information.\n","# ✈️🧳 AI 旅行代理人 - 基于 LangGraph：一个实用案例 🌍\n欢迎来到 AI 旅行代理人仓库！本项目展示了如何利用 LangGraph 构建一个智能旅行助手，该助手使用多个语言模型（LLMs）来处理查找航班、预订酒店以及发送个性化邮件等任务。该代理旨在与用户互动、调用所需工具，并提供无缝的旅行规划体验。\n\n## **功能特性**\n\n- **有状态交互**：代理会记住用户的交互过程，并从中断处继续，确保流畅的用户体验。\n- **人机协作模式**：用户可以控制关键操作，例如在发送邮件之前审核旅行计划。\n- **动态切换 LLM**：代理会根据不同的任务智能地在不同 LLM 之间切换，比如调用工具或生成邮件。\n- **邮件自动化**：自动为用户生成详细的旅行计划并通过邮件发送。\n\n## 快速开始\n克隆仓库、设置虚拟环境并安装所需依赖包：\n\n1. `git clone git@github.com:nirbar1985\u002Fai-travel-agent.git`\n\n1. （如果您已通过 pyenv 安装了 Python 3.11.9）\n   ```shell script\n   pyenv local 3.11.9\n   ```\n\n1. 安装依赖：\n    ```shell script\n    poetry install --sync\n    ```\n\n1. 进入虚拟环境：\n    ```shell script\n    poetry shell\n    ```\n\n## **存储您的 API 密钥**\n\n1. 在项目的根目录下创建一个 `.env` 文件。\n2. 将您的 API 密钥和环境变量添加到 `.env` 文件中：\n    ```plaintext\n    OPENAI_API_KEY=your_openai_api_key\n    SERPAPI_API_KEY=your_serpapi_api_key\n    SENDGRID_API_KEY=your_sendgrid_api_key\n\n    # 可观测性相关变量\n    LANGCHAIN_API_KEY=your_langchain_api_key\n    LANGCHAIN_TRACING_V2=true\n    LANGCHAIN_PROJECT=ai_travel_agent\n    ```\n\n请务必将占位符（`your_openai_api_key`、`your_serpapi_api_key`、`your_langchain_api_key`、`your_sendgrid_api_key`）替换为您实际的密钥。此版本包含了 OpenAI、SerpAPI、LangChain 和 SendGrid 所需的环境变量，以及 `LANGCHAIN_TRACING_V2` 和 `LANGCHAIN_PROJECT` 的配置。\n\n### 如何运行聊天机器人\n要启动聊天机器人，请运行以下命令：\n```\nstreamlit run app.py\n```\n\n### 使用聊天机器人\n启动后，只需输入您的旅行需求。例如：\n> 我想从 10 月 1 日到 7 日从马德里飞往阿姆斯特丹。帮我找找航班和四星级酒店。\n\n![photo1](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_11a3ce753b44.png)\n\n聊天机器人将生成包含标志和链接的结果，方便您进行导航。\n\n> **注意**：数据通过 Google Flights 和 Google Hotels API 获取。本项目不涉及任何品牌的关联或推广。\n\n#### 示例输出\n\n- 航班和酒店选项，附有相关标志和链接，便于参考：\n\n![photo2](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_badcdc4d3a01.png)\n\n![photo3](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_44cdbc92ab1b.png)\n\n\n#### 邮件集成\n邮件集成采用了“人机协作”模式，允许您暂停代理执行并将控制权交还给用户，在通过邮件发送旅行数据之前灵活管理信息。\n\n![photo4](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_faf1f26c500c.png)\n\n- 以 HTML 格式编排的旅行数据，直接送达您的收件箱：\n![photo5](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_73170962a4f3.png)\n![photo6](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_readme_ce5b1d42614e.png)\n\n## 了解更多\n如需深入了解底层技术原理，请参阅 Medium 上的完整文章：\n[使用 LangGraph 构建生产就绪的 AI 代理：真实场景案例](https:\u002F\u002Fmedium.com\u002Fcyberark-engineering\u002Fbuilding-production-ready-ai-agents-with-langgraph-a-real-life-use-case-7bda34c7f4e4)\n\n## 许可证\n本项目采用 MIT 许可证发布。更多信息请参阅 LICENSE.txt 文件。","# AI Travel Agent 快速上手指南\n\n本项目基于 **LangGraph** 构建，是一个智能旅行助手。它能够调用多个大语言模型（LLM）来完成航班查询、酒店预订及发送个性化行程邮件等任务，并支持“人在回路”（Human-in-the-Loop）机制，让用户在关键操作前进行确认。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Linux \u002F macOS \u002F Windows (WSL)\n*   **Python 版本**：推荐 **3.11.9** (项目指定版本)\n*   **包管理工具**：[Poetry](https:\u002F\u002Fpython-poetry.org\u002F) (用于依赖管理)\n*   **版本管理工具** (可选)：`pyenv` (用于管理 Python 版本)\n\n您需要提前注册并获取以下服务的 API Key：\n*   **OpenAI** (大模型服务)\n*   **SerpAPI** (搜索服务，用于获取航班和酒店数据)\n*   **SendGrid** (邮件发送服务)\n*   **LangChain** (可观测性追踪，可选但推荐)\n\n## 安装步骤\n\n### 1. 克隆项目\n```bash\ngit clone git@github.com:nirbar1985\u002Fai-travel-agent.git\ncd ai-travel-agent\n```\n\n### 2. 配置 Python 环境\n如果您使用 `pyenv` 管理 Python 版本，请切换至项目指定的 3.11.9 版本：\n```bash\npyenv local 3.11.9\n```\n\n### 3. 安装依赖\n使用 Poetry 同步安装所有必要的依赖包：\n```bash\npoetry install --sync\n```\n\n### 4. 激活虚拟环境\n进入项目专用的虚拟环境：\n```bash\npoetry shell\n```\n\n### 5. 配置 API 密钥\n在项目根目录下创建 `.env` 文件，并填入您的 API 密钥：\n\n```plaintext\nOPENAI_API_KEY=your_openai_api_key\nSERPAPI_API_KEY=your_serpapi_api_key\nSENDGRID_API_KEY=your_sendgrid_api_key\n\n# 可观测性配置 (可选)\nLANGCHAIN_API_KEY=your_langchain_api_key\nLANGCHAIN_TRACING_V2=true\nLANGCHAIN_PROJECT=ai_travel_agent\n```\n> **注意**：请将 `your_..._key` 替换为您实际申请的密钥。\n\n## 基本使用\n\n### 启动应用\n在激活的虚拟环境中，运行以下命令启动基于 Streamlit 的聊天机器人界面：\n```bash\nstreamlit run app.py\n```\n\n### 操作示例\n浏览器会自动打开应用界面。在输入框中输入您的旅行需求即可。\n\n**示例指令：**\n> I want to travel to Amsterdam from Madrid from October 1st to 7th. Find me flights and 4-star hotels.\n\n**功能流程：**\n1.  **智能搜索**：Agent 将自动调用工具搜索从马德里到阿姆斯特丹的航班及四星级酒店，并展示带图标和链接的结果。\n2.  **人工确认**：在发送行程邮件前，系统会暂停并等待您的确认（Human-in-the-Loop 特性）。\n3.  **邮件送达**：确认后，系统将生成格式精美的 HTML 行程单并发送至您的邮箱。\n\n---\n*更多技术细节可参考原作者在 Medium 发布的文章：[Building Production-Ready AI Agents with LangGraph](https:\u002F\u002Fmedium.com\u002Fcyberark-engineering\u002Fbuilding-production-ready-ai-agents-with-langgraph-a-real-life-use-case-7bda34c7f4e4)*","自由职业者李明计划从上海前往东京进行为期五天的商务考察，需要快速搞定机票、四星级酒店预订并将详细行程发送给合作伙伴确认。\n\n### 没有 ai-travel-agent 时\n- **信息搜集碎片化**：需要在多个航空和酒店网站间反复切换比价，耗时数小时且容易遗漏优惠组合。\n- **上下文记忆缺失**：每次修改日期或预算，都得重新向客服或搜索引擎重复之前的偏好限制，沟通效率极低。\n- **人工核对风险高**：整理好的行程单需手动复制粘贴到邮件，格式易乱且容易出现航班时间或酒店地址抄写错误。\n- **缺乏关键控制点**：一旦开始预订流程，难以在最终付款或发送邮件前暂停并再次确认细节，容错率低。\n\n### 使用 ai-travel-agent 后\n- **一站式智能聚合**：只需输入“上海到东京 10 月 1 日至 6 日，四星级酒店”，ai-travel-agent 自动调用 Google Flights 和 Hotels API，秒级返回带官方链接的最优方案。\n- **状态记忆流畅交互**：基于 LangGraph 的状态管理，李明随时追加“只要靠近地铁站”的要求，ai-travel-agent 能记住上文直接更新结果，无需重复背景。\n- **自动化精美输出**：工具自动生成包含航班酒店 Logo 和直达链接的 HTML 格式行程单，并通过 SendGrid 准备发送，彻底告别手动排版。\n- **人机协同安全可控**：利用“人在回路”功能，ai-travel-agent 在发送邮件前会暂停等待李明审查，确认无误后才执行发送，确保万无一失。\n\nai-travel-agent 将原本繁琐耗时的差旅规划转化为一次简单的对话交互，在提升效率的同时通过人机协作机制保障了决策的准确性。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnirbar1985_ai-travel-agent_11a3ce75.png","nirbar1985",null,"https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fnirbar1985_936acb80.png","https:\u002F\u002Fgithub.com\u002Fnirbar1985",[78],{"name":79,"color":80,"percentage":81},"Python","#3572A5",100,750,148,"2026-04-15T13:12:16","MIT","未说明",{"notes":88,"python":89,"dependencies":90},"该项目基于 LangGraph 构建，需配置 OpenAI、SerpAPI、SendGrid 和 LangChain 的 API 密钥（通过 .env 文件）。使用 Poetry 进行依赖管理和虚拟环境创建。前端界面通过 Streamlit 启动。项目包含“人在回路”功能，允许用户在发送邮件前审核旅行计划。数据来源于 Google Flights 和 Google Hotels API。","3.11.9",[91,92,93,94,95,96,97],"langgraph","openai","serpapi","sendgrid","langchain","streamlit","poetry",[35,13],"2026-03-27T02:49:30.150509","2026-04-20T04:07:38.158350",[102,107,112,117,121,126],{"id":103,"question_zh":104,"answer_zh":105,"source_url":106},43436,"遇到 ConfigError: duplicate validator function 错误如何解决？","此错误通常由 Python 3.12 与特定库（如 langchain_openai 或 pydantic）之间的兼容性问题引起。维护者建议在 Windows 环境下尝试使用 Python 3.11 运行项目。\n\n解决步骤：\n1. 卸载当前 Python 环境或创建新的虚拟环境。\n2. 安装 Python 3.11 版本。\n3. 重新安装项目依赖：\npip install -r requirements.txt\n\n这可以避免因版本不匹配导致的验证器重复定义错误。","https:\u002F\u002Fgithub.com\u002Fnirbar1985\u002Fai-travel-agent\u002Fissues\u002F1",{"id":108,"question_zh":109,"answer_zh":110,"source_url":111},43435,"运行 app.py 时出现 MediaFileStorageError 错误，提示找不到图片路径怎么办？","该问题是由于代码中硬编码了开发者本地的绝对图片路径导致的。维护者已在版本 0.1.1 中修复了此问题。请升级项目依赖到最新版本：\n\npip install --upgrade ai-travel-agent\n\n或者手动检查 app.py 文件，确保图片路径使用的是相对路径或正确的资源目录，而不是类似 '\u002FUsers\u002FNir.Bar\u002F...' 的本地路径。","https:\u002F\u002Fgithub.com\u002Fnirbar1985\u002Fai-travel-agent\u002Fissues\u002F3",{"id":113,"question_zh":114,"answer_zh":115,"source_url":116},43437,"Agent 在多轮对话中无法记住上下文信息（thread_id 不断变化）怎么办？","这是因为每次请求都生成了新的 thread_id，导致状态无法保持。解决方法是使用 Streamlit 的 session_state 来持久化 thread_id。\n\n请将代码修改为：\n\nif \"thread_id\" not in st.session_state:\n    st.session_state.thread_id = str(uuid.uuid4())\n\ndef process_query(user_input):\n    if user_input:\n        try:\n            thread_id = st.session_state.thread_id\n            # 后续使用 thread_id 进行逻辑处理\n\n这样可确保在同一会话中 thread_id 保持不变，从而保留对话记忆。","https:\u002F\u002Fgithub.com\u002Fnirbar1985\u002Fai-travel-agent\u002Fissues\u002F5",{"id":118,"question_zh":119,"answer_zh":120,"source_url":111},43438,"提交旅行查询后没有任何反应或按钮不可用是怎么回事？","该现象通常伴随图片加载错误（MediaFileStorageError）出现，因为 UI 渲染在加载图片时失败，导致后续交互组件无法正常显示。请首先参考“图片路径错误”的解决方案，升级到版本 0.1.1 或修复图片路径。\n\n如果升级后仍无反应，请检查：\n1. 是否正确安装了所有依赖项；\n2. 环境变量（如 OPENAI_API_KEY）是否已配置；\n3. 控制台是否有其他报错信息。\n\n修复图片路径问题后，提交按钮和交互功能通常会自动恢复正常。",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},43439,"代码中引用的 Documents 文件夹不存在导致崩溃如何处理？","这是因为代码中使用了开发者个人的本地绝对路径（如 \u002FUsers\u002FNir.Bar\u002FDocuments\u002F...），而该路径在其他用户的机器上并不存在。此问题已在版本 0.1.1 中修复。\n\n解决方案：\n- 推荐直接升级到最新版本（0.1.1 及以上）；\n- 若暂时无法升级，可手动修改 app.py 第 85 行左右，将硬编码的绝对路径改为项目内的相对路径，例如：\nst.sidebar.image('images\u002Fai-travel.png', caption='AI Travel Assistant')\n\n并确保项目根目录下存在 images 文件夹及对应的图片文件。","https:\u002F\u002Fgithub.com\u002Fnirbar1985\u002Fai-travel-agent\u002Fissues\u002F4",{"id":127,"question_zh":128,"answer_zh":129,"source_url":106},43440,"如何在不同操作系统上避免运行时的兼容性错误？","为避免因操作系统和 Python 版本差异导致的兼容性错误（特别是涉及 langchain_openai 和 pydantic 库时），建议遵循以下最佳实践：\n\n1. 优先使用 Python 3.11 版本（而非 3.12），尤其是在 Windows 系统上；\n2. 使用虚拟环境隔离项目依赖：\n   python -m venv venv\n   source venv\u002Fbin\u002Factivate  # Linux\u002FMac\n   venv\\Scripts\\activate     # Windows\n3. 确保升级到项目最新发布的版本（如 0.1.1+），其中已修复多处路径和依赖问题；\n4. 不要在代码中使用绝对路径，始终使用相对路径或动态获取资源路径。",[]]