Token导航 LogoToken导航TokenDH.com
Langgraph Voice Agent logo
AI代理stdio官方级别未说明来源级核验

Langgraph Voice Agent

MCP Server

Luna是一款基于Langgraph的语音交互AI助手,通过自然对话帮助用户管理费用,支持语音输入输出、自动分类和数据库集成。

工具数

0

提示词数

0

GitHub Stars

27

资源数

0
Python数据库集成自然语言处理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

rosiefaulkner

提供方

rosiefaulkner

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python main.py

详细介绍

Luna:支持语音的费用管理代理

Luna是一款使用Langgraph构建的语音AI助手,可帮助用户通过自然对话来管理开支。该项目演示了如何为任何Langgraph代理创建语音接口,将语音到文本和文本到语音功能与强大的代理框架相结合。

🌟 特性

  • 语音交互:与Luna交谈,通过高质量的文本到语音听取回应
  • 费用管理:通过自然对话创建、查询、更新和删除费用
  • 类别分类:根据描述自动对费用进行分类
  • 数据库集成:将费用数据存储在PostgreSQL数据库中(通过Supabase)
  • 使用Agent的工具:使用Langgraph的代理框架构建,用于复杂推理

🛠️ 技术栈

后端

  • Python 3.13:后端的核心语言
  • 兰格拉夫:用于构建会话式人工智能的代理框架
  • OpenAI:

- 语音转文本的Whisper API - GPT-4 Mini用于代理推理 - 用于文本到速度响应的TTS API

  • MCP(模型调用协议):用于定义和使用工具
  • SQL炼金术:ORM用于数据库交互
  • Supabase:PostgreSQL数据库提供程序

音频处理

  • 音响装置:用于从麦克风捕获音频
  • Scipy 的:用于音频文件处理

📋 先决条件

  • Python 3.13
  • OpenAI API密钥
  • 辅助账户和数据库
  • 麦克风和扬声器

🚀 入门指南

1.克隆存储库

git clone https://github.com/rosiefaulkner/langgraph-voice-agent.git
cd langgraph-voice-agent

2.设置虚拟环境并安装依赖项

(推荐)使用 紫外线 用于依赖关系管理

在项目目录中设置venv,并使用一个命令安装所有依赖项。

uv sync

3.设置环境变量

创建一个 .env 根目录中的文件,包含以下变量:

OPENAI_API_KEY=your_openai_api_key
SUPABASE_URI=postgresql://postgres:password@db.example.supabase.co:5432/postgres

4.运行应用程序

python main.py

🎤 使用Luna

  1. 运行应用程序
  2. 当系统提示时,说出你的请求(例如,“为今天的午餐创建一笔新的费用,花费15美元”)
  3. 按Enter停止录制
  4. Luna将处理您的请求,必要时与数据库交互,并口头回复
  5. 继续对话或说“退出”或“退出”以结束会话

🧩 项目结构

langgraph-voice-agent/
├── main.py                  # Main application entry point
├── assistant_graph.py       # Langgraph agent definition
├── state.py                 # State management for the agent
├── voice_utils.py           # Audio recording and playback utilities
├── mcps/                    # Model Calling Protocol servers
│   ├── mcp_config.json      # MCP server configuration
│   └── local_servers/
│       └── db.py            # Database tools implementation
├── .env                     # Environment variables (not in repo)
├── .env.example             # Example environment variables
└── pyproject.toml           # Project dependencies

🔧 自定义代理

修改系统提示

要更改Luna的个性或能力,请编辑 system_prompt 在……里面 assistant_graph.py:

system_prompt = """You are Luna, the company's expense manager...

添加新工具

  1. 在中创建新的MCP服务器或向现有服务器添加工具 mcps/local_servers/
  2. 在中注册服务器 mcps/mcp_config.json
  3. 代理将自动使用这些工具

更改语音设置

在中修改TTS设置 voice_utils.py:

async def play_audio(message: str):
    # ...
    async with openai_async.audio.speech.with_streaming_response.create(
        model="gpt-4o-mini-tts",
        voice="fable",  # Change the voice here
        input=cleaned_message,
        instructions="Speak in a cheerful, helpful tone with a brisk pace.",  # Modify instructions
        response_format="pcm",
        speed=1.2,  # Adjust speed
    ) as response:
        # ...

📚 资源

🤝 贡献

欢迎投稿!请随时提交拉取请求。

目录标签

目录标签

Python数据库集成自然语言处理语音交互本地部署费用管理AI助手

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP