
SSE-based Server and Client-Streamlit-App

2025.04.21
0
Python图像识别云原生内容生成
imagerecog 是一个基于 MCP(Model Context Protocol)协议的图像识别工具,采用服务器-客户端架构,提供简单高效的图像识别功能。该项目支持通过 SSE(Server-Sent Events)实现服务器与客户端的解耦,适用于云原生场景。
View on GitHub
Overview
基本能力
产品定位
imagerecog 是一个图像识别工具,基于 MCP 协议实现服务器与客户端的通信,支持云原生场景下的图像识别需求。
核心功能
- 基于 MCP 协议的图像识别
- 支持 SSE 通信模式,实现服务器与客户端的解耦
- 提供 Streamlit 前端应用
- 支持 Ollama 和 OpenAI API 集成
- 支持 Docker 部署
适用场景
- 云原生环境下的图像识别
- 需要解耦服务器与客户端的应用场景
- 需要集成多种 AI 模型(如 Ollama、OpenAI)的图像识别任务
工具列表
- MCP 服务器:提供图像识别服务
- Streamlit 应用:提供用户友好的前端界面
- Ollama:支持本地运行的 AI 模型
- OpenAI API:支持云端 AI 模型
- Docker:支持容器化部署
常见问题解答
- 如何启动 MCP 服务器?
使用命令
mcp dev src/server.py
或python src/server.py
。 - 如何启动 Streamlit 应用?
使用命令
python -m streamlit run app.py
。 - 如何配置 OpenAI API?
在
./streamlit/st.secrets.toml
文件中添加 OpenAI API 密钥。
使用教程
使用依赖
安装 MCP 和相关依赖:
# Installing mcp on Mac
brew install mcp
# Installing mcp on Linux
conda install -c conda-forge mcp
# Cloning the repo
git clone https://github.com/DrBenjamin/imagerecog
安装教程
- 创建并激活 conda 环境:
conda env create -f environment.yml
conda activate imagerecog
- 启动 MCP 服务器:
mcp dev src/server.py
# or
python src/server.py
- 启动 Streamlit 应用:
python -m streamlit run app.py
调试方式
检查服务端口是否正常启动:
lsof -i :6274
lsof -i :8080
lsof -i :8501