(七)自然语言处理笔记——Ai医生

(七)自然语言处理笔记------Ai医生

1、项目准备阶段

百度Unit

python 复制代码
https://ai.baidu.com/unit/v2#/myrobot

1、大模型测试

由于我在开发阶段,发现百度Unit模块更新太快致使我找不到,所以,选用本地服务器上部署的Deepseek-R1-0528-8b大模型进行代替
大模型测试访问脚本如下:

python 复制代码
from openai import OpenAI

# API_key: gpustack_a2703848bdbae2e2_7df170c373f923352ad728a05db8a87f

client = OpenAI(
  base_url="http://192.168.42.244:8080/v1-openai", 
  api_key="gpustack_a2703848bdbae2e2_7df170c373f923352ad728a05db8a87f"
)

response = client.chat.completions.create(
  temperature=1,
  top_p=1,
  max_tokens=1024,
  model="DeepSeek_R1_0528_Qwen3_8B",
  messages=[
       {"role": "user", "content": "做一个自我介绍吧"},
  ],
)
print(response.choices[0].message.content)

访问大模型进行多轮对话的脚本:

python 复制代码
from openai import OpenAI

client = OpenAI(
    base_url="http://192.168.42.244:8080/v1-openai",
    api_key="gpustack_a2703848bdbae2e2_7df170c373f923352ad728a05db8a87f"
)

# 用来存储完整上下文
messages = [
    {"role": "system", "content": "你是一个友善的助手。"}
]

def chat(user_input):
    # 添加用户消息
    messages.append({"role": "user", "content": user_input})

    # 调用模型
    response = client.chat.completions.create(
        temperature=1,
        top_p=1,
        max_tokens=1024,
        model="DeepSeek_R1_0528_Qwen3_8B",
        messages=messages,
    )

    # 获取模型回复
    reply = response.choices[0].message.content

    # 把模型回复加入上下文
    messages.append({"role": "assistant", "content": reply})

    return reply


# 示例
# print(chat("做一个自我介绍吧"))
# print(chat("介绍一下你的能力"))
# print(chat("能告诉我刚刚你说了什么重点吗?"))



if __name__=="__main__":
    while True:

        chat_input=input("请输入要咨询的问题:\n")

        if chat_input=="Q" or chat_input=="q":
            break
        print(chat_input)

        reply=chat(chat_input)

        print(reply,'\n----------------------------------')

2、Flask web服务框架

python 复制代码
# 使用pip安装Flask
pip install flask  --default-timeout=100 -i https://pypi.tuna.tsinghua.edu.cn/simple

基本使用方法:

python 复制代码
# 导入Flask类
from flask import Flask
# 创建一个该类的实例app, 参数为__name__, 这个参数是必需的,
# 这样Flask才能知道在哪里可找到模板和静态文件等东西。
app = Flask(__name__)

# 使用route()装饰器来告诉Flask触发函数的URL
@app.route('/')
def hello_world():
    """请求指定的url后,执行的主要逻辑函数"""
    # 在用户浏览器中显示信息:'Hello, World!'
    return 'Hello, World!'

if __name__ == '__main__':
    app.run(host="0.0.0.0", port=8080)

3、Gunicorn服务组件

安装:

python 复制代码
# 使用pip安装gunicorn
pip install gunicorn  --default-timeout=100 -i https://pypi.tuna.tsinghua.edu.cn/simple

基本使用方法:

python 复制代码
# 使用其启动Flask服务:
gunicorn -w 1 -b 0.0.0.0:5000 flask_test:app
# -w 代表开启的进程数,我们只开启一个进程
# -b 服务的IP地址和端口
# flask_test:app 是指执行的主要对象位置,在flask_test.py中的app对象
# 如果使其在后台运行可使用:
# nohup gunicorn -w 1 -b 0.0.0.0:5000 flask_test:app 2>&1 &

4、Redis数据库


拉取镜像:

python 复制代码
docker run -d \
  --name redis \
  -p 6379:6379 \
  redis:latest

进入容器并测试:

python 复制代码
docker exec -it redis redis-cli ping

Redis 配置:

进入容器,修改配置文件

python 复制代码
打开配置文件:
相关推荐
小岐AI观23 分钟前
智赋岐黄适合养生馆吗?
大数据·人工智能·物联网
YOLO数据集集合30 分钟前
煤炭物料检测数据集:基于YOLO26的矿山传送带智能“哨兵”
人工智能·yolo·数据挖掘·煤炭·煤炭检测·矿山传送带·传送带异物
深小乐1 小时前
DeepSeek Harness 强是真的强,普通用户可以再等等
人工智能
峥无2 小时前
从0到1手撕红黑树:封装实现 my_map 与 my_set(SGI-STL 源码级深度解析)
开发语言·c++·笔记·算法·stl
蜡台2 小时前
大模型算力下放客户端:浏览器/本地设备全落地方案解析
人工智能·ai
冬奇Lab2 小时前
开源项目第191期:gstack — YC CEO Garry Tan 开源的 AI 虚拟工程团队,23 个专家角色 slash command,从产品构思到上线发布的完整研发流程
人工智能·开源·资讯
冬奇Lab2 小时前
企业知识库系列(03):图增强 RAG 实测——GraphRAG vs HippoRAG
人工智能
不会代码的小猴2 小时前
3. 控件学习1
开发语言·c++·笔记·qt·算法