基于人工智能的采购代理
一个智能采购助手,利用人工智能通过自然语言查询来寻找公司和员工。采用FastAPI后端和Streamlit前端构建,由Groq LLM和Coresignal API提供支持。
特点/特性
- 使用Groq大型语言模型进行自然语言查询处理
- 通过Coresignal API搜索公司和员工信息
- 🎨 带有深色/浅色主题的交互式Streamlit用户界面
- 📊 高级过滤与多级结果高亮显示
- 📁 将结果导出为CSV、Excel和PDF格式
- 🔍 基于AI的结果总结
建筑
- 后端FastAPI 服务器(
app.py负责处理人工智能处理和API调用 - 前端Streamlit 客户端(
client.py) 提供交互式用户界面 - AI引擎Groq LLM用于查询解析和结果分析
- 数据源公司和员工数据的Coresignal API
设置
先决条件
- Python 3.13及以上版本
- Coresignal API密钥
- Groq API密钥
安装
- 克隆并导航到项目:
cd "AI-Powered Sourcing Agent"- 安装依赖项:
pip install -r requirements.txt- 配置环境变量:
创建/更新 .env 文件:
CORESIGNAL_API_KEY=your_coresignal_api_key
GROQ_API_KEY=your_groq_api_key
如何跑步
方法1:双终端设置(推荐)
1号航站楼 - 启动FastAPI后端:
uvicorn app:app --reload --port 80002号航站楼 - 启动Streamlit前端:
streamlit run client.py方法2:单条命令
# Start backend in background, then frontend
uvicorn app:app --reload --port 8000 & streamlit run client.py访问应用程序的地址为: http://localhost:8501
示例查询
公司搜索示例
| 查询 | 预期输出 | 使用场景 |
|---|---|---|
"Find AI companies in San Francisco" | 旧金山AI/ML公司列表,含行业、规模、地点 | 市场调研 |
"Show me fintech startups with more than 100 employees" | 按规模筛选的金融科技公司 | 投资分析 |
"Chemical companies with polymer research in Germany" | 以聚合物为重点的德国化工公司 | 行业目标 |
"Find SaaS companies in Europe" | 拥有网站和详细信息的欧洲SaaS公司 | 潜在销售客户开发 |
员工搜索示例
| 查询 | 预期输出 | 使用场景 |
|---|---|---|
"Find Python developers at Google" | 具备Python技能的谷歌员工 | 人才搜寻 |
"Show me data scientists with machine learning experience" | 拥有资源的机器学习领域数据科学家 | 招聘 |
"Find senior engineers at Microsoft in Seattle" | 西雅图地区的资深微软工程师 | 竞争分析 |
"LLM engineers with QLoRA fine-tuning experience" | 大型语言模型(LLM)微调技术专家 | 技术招聘 |
高级查询示例
| 主查询 | 精炼 | 综合结果 |
|---|---|---|
"Find tech companies" | "Europe, more than 500 employees" | 欧洲大型科技公司 |
"Show me engineers" | "AI/ML background, San Francisco" | 基于SF的AI/ML工程师 |
"Find pharmaceutical companies" | "drug discovery, Boston area" | 波士顿制药公司在药物研发领域 |
详细功能特性
智能查询处理
- 自动检测查询内容是关于公司还是员工
- 将自然语言转换为结构化的API过滤器
- 处理位置、行业、技能和规模参数
高级用户界面功能
- 多级高亮显示最佳结果(绿色)、技能匹配(橙色/紫色)、高连接/规模(蓝色)
- 动态过滤按位置、大小、连接关系筛选结果
- 切换主题在浅色模式和深色模式之间切换
- 导出选项以多种格式下载结果
AI摘要生成
- 提供搜索结果的智能摘要
- 突出显示最相关的匹配项
- 基于查询意图的情境洞察
API 端点
POST(邮政、邮寄、帖子、发布) /sourcing
主要的搜索终端,负责处理查询并返回结果。
请求体:
{
"user_query": "Find AI companies in Silicon Valley",
"refinement_query": "more than 200 employees"
}回应:
{
"query_type": "company",
"results": [
{
"Name": "OpenAI",
"Industry": "Artificial Intelligence",
"Size": "500-1000",
"Location": "United States",
"Website": "openai.com"
}
],
"ai_summary": "Found 15 AI companies in Silicon Valley..."
}故障排除
常见问题
- “连接被拒绝”错误:
- 确保FastAPI后端正在8000端口上运行 - 检查端口是否已被占用
- “未找到结果”:
- 验证API密钥 .env 文件 - 检查Coresignal API的配额/限制 - 尝试使用更宽泛的搜索词
- 导入错误:
- 重新安装依赖项: pip install -r requirements.txt - 检查Python版本兼容性
性能提示
- 使用具体查询以获得更好结果
- 将主要查询与细化条件结合以提高精确度
- 导出大型结果集以进行离线分析
做出贡献
欢迎随时提交问题和增强功能请求!
