littlebot
Published on 2025-04-10 / 6 Visits
0

【源码】基于Python的广告问答系统

项目简介

本项目是基于Python和FastAPI框架构建的广告问答系统。借助FastAPI框架搭建API接口,结合Opensearch的KNN搜索功能,能够对腾讯广告、微信广告、企业微信等多平台的广告帮助中心数据进行查询,为用户提供相关问题的答案。

项目的主要特性和功能

  1. 多平台数据源支持:整合多个广告平台帮助中心数据,提供全面的广告问答服务。
  2. KNN搜索:利用Opensearch的KNN搜索功能,提升问题查询的准确性与效率。
  3. API接口:通过FastAPI框架提供标准API接口,便于外部系统调用。
  4. 数据录入与更新:提供脚本(如script/Quick_update.py),方便进行数据的录入和更新。

安装使用步骤

环境准备

确保已安装以下环境: - Ubuntu 18.04.6 LTS - fastapi 0.68.2 - uvicorn 0.15.0 - sentence-transformers 2.1.0 - transformers 4.16.2

运行步骤

使用Docker运行

bash docker build -t ad_help . docker run -d --network=host --name adhelp --restart=always ad_help

直接运行API

bash uvicorn main:app --reload --host 0.0.0.0 --port 1333

测试

修改以下curl命令中的payload.text更换测试问题,进行本地测试: bash curl -X POST -k "http://69.231.141.164/fastapi/v1/QA/search/jzmh/message" -H "charset=UTF-8" -H 'Content-Type: application/json' -d' { "data":{ "messageId": "2422188041612737714", "chatId": "5e469a2b8d429806b0fef189", "avatar": "a", "roomTopic": "abc", "roomId": "7215325536@chatroom", "contactName": "小北", "contactId": "wxid_rr9ej1o8xv9h21", "payload": { "text": "怎么使用朋友圈" }, "type": 7, "timestamp": 1585995128441, "token": "5dbe8221fc191f13bc072908", "botId": "5d0c86971150c017984cee66", "contactType": 1, "coworker": false, "botId": "5d0c86971150c017984cee77", "botWxid": "1688851085873555", "botWeixin": "123" } } '

Opensearch相关操作

创建支持KNN的索引

  • 使用curl bash curl -X PUT -k "https://admin:admin@localhost:9200/my-index" -H 'Content-Type: application/json' -d' { "settings": { "index.knn": true }, "mappings": { "properties": { "my_vector1": { "type": "knn_vector", "dimension": 2 }, "my_vector2": { "type": "knn_vector", "dimension": 4 } } } }'
  • 使用Python脚本 bash python create_index.py

添加数据

bash python add_data.py

搜索数据

  • 使用curl ```bash curl -X GET -k "https://admin:admin@localhost:9200/my-index/_search"

GET my-index/_search { "size": 2, "query": { "knn": { "my_vector2": { "vector": [2, 3, 5, 6], "k": 2 } } } } - **使用Python脚本**bash python change_data.py ```

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】