Skip to content

About

Navigation System Made by Claude Code

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

厦门大学智能服务导航助手

基于大语言模型的智能Agent,帮助师生快速找到厦门大学各类事务办理的官方网站和入口。

功能特点

  • 智能对话: 自然语言理解,支持模糊查询
  • 精准导航: 直接提供官方网址,避免钓鱼网站
  • 个性化服务: 根据用户类型(学生/教师)提供定制化推荐
  • 多轮对话: 支持上下文理解和连续对话
  • 快速搜索: 支持关键词搜索和分类筛选

技术架构

  • 后端: FastAPI + Anthropic Claude API
  • 前端: Gradio 界面
  • 数据: Markdown 文件存储服务信息
  • 缓存: 内存会话管理

快速开始

安装依赖

pip install -r requirements.txt

配置环境变量

export ANTHROPIC_API_KEY="your-claude-api-key"

启动服务

# 一键启动后端和前端
./start.sh

# 或者分别启动
# 启动后端 (端口 8000)
python -m app.main

# 启动前端 (端口 7860)
python gradio_app.py

访问服务

API 接口

智能对话

curl -X POST "http://localhost:8000/api/v1/chat" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "我要请假",
    "user_type": "student",
    "session_id": "optional-session-id"
  }'

服务搜索

curl -X POST "http://localhost:8000/api/v1/search" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "选课",
    "category": "教务管理",
    "limit": 10
  }'

获取服务列表

curl "http://localhost:8000/api/v1/services?category=教务管理&limit=20"

项目结构

xmu-service-agent/
├── app/
│   ├── main.py              # FastAPI 应用入口
│   ├── core/
│   │   └── config.py        # 配置管理
│   ├── api/
│   │   ├── endpoints.py     # API 端点
│   │   └── router.py        # 路由配置
│   ├── services/
│   │   ├── data_manager.py  # 数据管理
│   │   ├── chat_manager.py  # 会话管理
│   │   └── enhanced_llm_agent.py  # LLM 代理
│   └── models/
│       └── schemas.py       # 数据模型
├── data/
│   └── services.md          # 服务数据文件
├── gradio_app.py            # Gradio 前端界面
├── start.sh                 # 启动脚本
└── requirements.txt         # 依赖列表

服务数据格式

服务数据存储在 data/services.md 文件中,使用 Markdown 格式:

## 分类名称

### 服务名称
- **网址**: https://example.xmu.edu.cn
- **描述**: 服务描述
- **关键词**: 关键词1,关键词2
- **用户类型**: student,teacher
- **所需材料**: 材料1,材料2

使用示例

智能对话示例

用户: "我要请假"

助手: "我理解您想要申请请假。为您找到以下相关服务:

学生请假系统 网址: https://student.xmu.edu.cn/qj 描述: 在线申请请假,辅导员审批 所需材料: 请假原因,时间,证明材料

办理流程:

  1. 登录请假系统
  2. 填写请假申请表
  3. 上传相关证明材料
  4. 提交辅导员审批

您可能还想问:

  • 请假流程是什么?
  • 请假需要哪些材料?"

搜索示例

用户搜索: "选课"

结果: 返回选课系统、补选退选等相关服务的网址和信息

扩展开发

添加新服务

编辑 data/services.md 文件,按照格式添加新的服务信息,然后重启应用即可。

自定义分类

在 app/models/schemas.py 中修改 ServiceCategory 枚举类型,添加新的分类。

集成其他大模型

在 app/services/enhanced_llm_agent.py 中替换 Claude API 为其他大模型API。

注意事项

  1. 确保所有网址都是厦门大学的官方域名 (*.xmu.edu.cn)
  2. 定期更新服务数据,确保信息的准确性
  3. API 密钥需要妥善保管,不要提交到代码仓库
  4. 建议在生产环境使用 Nginx 反向代理

许可证

本项目仅供厦门大学内部使用

About

Navigation System Made by Claude Code

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages