返回幻灯片列表

大模型 AI 应用构建

大模型 AI 应用构建

我们的 AI 基础服务

服务 地址 功能
FastChat http://172.16.33.66:8000 OpenAI 接口,分布式管理大模型
http://172.16.33.66:8002 评估基于大型语言模型的聊天机器人
One API http://172.16.33.157:8100 OpenAI 接口管理和分发系统
FastGPT http://172.16.33.157:8200 知识库问答平台
Dify http://172.16.33.157 LLMOps 平台
ChatGPT Next http://172.16.33.157:8300 Web 聊天机器人

微信聊天机器人

大模型 AI 基础服务架构图

bg

👉 FastChat

分布式管理大模型

FastChat 系统架构

提供的模型

LLM

  • chatglm2-6b
  • chatglm3-6b
  • gpt-3.5-turbo (chatglm3-6b)

Embedding Model

  • bge-base-zh (bge-base-zh-v1.5)
  • text-embedding-ada-002 (bge-base-zh)

🤖 Chatbot

bg w:1000

⚔️ Chatbot Arena

bg fit

👉 OpenAI API

     操作:curl

列出模型:models

curl http://172.16.33.66:8000/v1/models
{
  "object": "list",
  "data": [
    {
      "id": "chatglm2-6b",
      "object": "model",
      "created": 1699948995,
      "owned_by": "fastchat",
      "root": "chatglm2-6b",
      "parent": null,
      "permission": [
        {
          "id": "modelperm-TotMqdtL2CUSv3Ea2qoX9m",
          "object": "model_permission",
          "created": 1699948995,
          "allow_create_engine": false,
          "allow_sampling": true,
          "allow_logprobs": true,
          "allow_search_indices": true,
          "allow_view": true,
          "allow_fine_tuning": false,
          "organization": "*",
          "group": null,
          "is_blocking": false
        }
      ]
    }
  ]
}

完成:completions

curl http://172.16.33.66:8000/v1/completions \
    -H "Content-Type: application/json" \
    -d '{
        "model": "chatglm3-6b",
        "prompt": "你是谁?",
        "temperature": 0.3
    }'
{
  "id": "chatcmpl-zwFjfHAspUjVNknNzmSU9f",
  "object": "chat.completion",
  "created": 1700206890,
  "model": "chatglm3-6b",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "我是名为 ChatGLM3-6B 的人工智能助手,是基于清华大学 KEG 实验室和智谱 AI 公司于 2023 年共同训练的语言模型开发的。"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 17,
    "total_tokens": 68,
    "completion_tokens": 51
  }
}

聊天:chat/completions

curl http://172.16.33.66:8000/v1/chat/completions \
    -H "Content-Type: application/json" \
    -d '{
        "model": "chatglm2-6b",
        "messages": [{"role": "user", "content": "你是谁?"}],
        "temperature": 0.3
    }'
{
  "id": "chatcmpl-3dW83Wpgs9ZpWrM8uahGTF",
  "object": "chat.completion",
  "created": 1699949859,
  "model": "chatglm2-6b",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "我是一个人工智能助手,我的名字是 ChatGLM。"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 19,
    "total_tokens": 71,
    "completion_tokens": 52
  }
}

嵌入:embeddings

curl http://172.16.33.66:8000/v1/embeddings \
    -H "Content-Type: application/json" \
    -d '{
        "input": "用于生成嵌入文本的字符串。",
        "model": "bge-base-zh"
    }'
{
    "object": "list",
    "data": [
        {
        "object": "embedding",
        "embedding": [
            -0.0038084269035607576,
            0.0007477423641830683,
            ......
            -0.002232820028439164,
            0.0010205521248281002
        ],
        "index": 0
        }
    ],
    "model": "bge-base-zh",
    "usage": {
        "prompt_tokens": 15,
        "total_tokens": 15
    }
}

👉 One API

OpenAI 接口管理

【令牌】 ➡️ 【添加新的令牌】

【渠道】 ➡️ 【添加新的渠道】

center

OpenAI API 操作:completions

curl http://172.16.33.157:8100/v1/completions \
    -H "Authorization: Bearer sk-r3i3TFHn5BO1ZG6yCf47A9DcDc6e48D5AeAaA57bB01a0962" \
    -H "Content-Type: application/json" \
    -d '{
        "model": "gpt-3.5-turbo",
        "prompt": "你是谁?",
        "temperature": 0.3
    }'
{
  "id": "cmpl-3BuYt9uVVoCetCJ6quk72P",
  "object": "text_completion",
  "created": 1700207760,
  "model": "chatglm3-6b",
  "choices": [
    {
      "index": 0,
      "text": "我为什么要在你这里提问?\n 您好,我是一个人工智能助手,",
      "logprobs": null,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 6,
    "total_tokens": 22,
    "completion_tokens": 16
  }
}

OpenAI API 操作:embeddings

curl http://172.16.33.157:8100/v1/embeddings \
    -H "Authorization: Bearer sk-r3i3TFHn5BO1ZG6yCf47A9DcDc6e48D5AeAaA57bB01a0962" \
    -H "Content-Type: application/json" \
    -d '{
        "input": "用于生成嵌入文本的字符串。",
        "model": "text-embedding-ada-002"
    }'
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "embedding": [
        -0.03044959157705307,
        ......
        -0.014226804487407207
      ],
      "index": 0
    }
  ],
  "model": "bge-base-zh",
  "usage": {
    "prompt_tokens": 15,
    "total_tokens": 15
  }
}

👉 FastGPT

知识库问答平台

基于 LLM 的知识库问答平台

bg w:888

创建闲聊机器人

闲聊机器人:【AI 模型】(chatglm2-6b)➡️【保存并预览】

创建中英文闲聊机器人

中英闲聊机器人:【提示词】➡️【保存并预览】

外链闲聊机器人(分享链接)

bg fit

外链闲聊机器人(嵌入网页)

<script src="http://172.16.33.157:8200/js/iframe.js" 
    id="fastgpt-iframe" 
    data-src="http://172.16.33.157:8200/chat/share?shareId=agzufbqkno3rt2sd53pqndz8" 
    data-color="#4e83fd">
</script>

闲聊机器人:配置 API 访问【记住API KEY 📌】

闲聊机器人:API 接口访问

curl --location --request POST 'http://172.16.33.157:8200/api/v1/chat/completions' \
    --header 'Authorization: Bearer fastgpt-RlC14WWpuL5NzIOglv0nsettgKd49Jp' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "chatId":"1000",
        "stream":false,
        "detail":false,
        "messages": [
            {
                "content": "你是谁?",
                "role": "user"
            }
        ]
    }'
{
  "id": "1000",
  "model": "",
  "usage": {
    "prompt_tokens": 1,
    "completion_tokens": 1,
    "total_tokens": 1
  },
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "我是一个名为 ChatGLM2-6B 的人工智能助手,是基于清华大学 KEG 实验室和智谱 AI 公司于 2023 年共同训练的语言模型开发的。我的任务是针对用户的问题和要求提供适当的答复和支持。"
      },
      "finish_reason": "stop",
      "index": 0
    }
  ]
}

创建知识库

知识库:文件导入

知识库问答机器人

知识库问答机器人:API 接口访问

curl --location --request POST 'http://172.16.33.157:8200/api/v1/chat/completions' \
    --header 'Authorization: Bearer fastgpt-zt576J8Ru52ZBRD1k6wJmf8iTo6uy' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "chatId":"1000",
        "stream":false,
        "detail":false,
        "messages": [
            {
                "content": "每月补卡次数",
                "role": "user"
            }
        ]
    }'
{
  "id": "1000",
  "usage": {
    "prompt_tokens": 1,
    "completion_tokens": 1,
    "total_tokens": 1
  },
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "根据您提供的信息,每月补卡次数不超过2次。"
      },
      "finish_reason": "stop",
      "index": 0
    }
  ]
}

👉 Dify

LLMOps 平台

bg

OpenAI API 配置(One API)

center w:950

创建数据集:选择数据源

创建数据集:文本分段与清洗

创建数据集:文本分段与清洗(自定义)

创建数据集:处理并完成

数据集:文件

数据集:搜索

创建应用

应用概览

👉 ChatGPT Next Web

Web 聊天机器人

设置

bg fit

自定义接口

模型服务商: OpenAI 自定义模型名称: chatglm2-6b

FastChat OpenAI API

接口地址 http://172.16.33.66:8000
API KEY EMPTY

One API OpenAI API

接口地址 http://172.16.33.157:8100
API KEY sk-r3i3TFHn5BO1ZG6yCf47A9DcDc6e48D5AeAaA57bB01a0962

闲聊

bg fit

👉 chatgpt-on-wechat

微信聊天机器人

部署:Docker

wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml
  • 配置 docker-compose.yml 文件
services:
  chatgpt-on-wechat:
    environment:
      OPEN_AI_API_BASE: 'http://172.16.33.157:8100/v1'
      OPEN_AI_API_KEY: 'sk-r3i3TFHn5BO1ZG6yCf47A9DcDc6e48D5AeAaA57bB01a0962'
  • 运行程序
docker-compose up -d
  • 查看用于登录的二维码
docker-compose logs -f

部署:来自源代码

git clone https://github.com/zhayujie/chatgpt-on-wechat
cd chatgpt-on-wechat/

python -m venv env
source env/bin/activate

pip install -r requirements.txt
pip install -r requirements-optional.txt

cp config-template.json config.json
  • 配置 config.json 文件
  "open_ai_api_base": "http://172.16.33.157:8100/v1",
  "open_ai_api_key": "sk-r3i3TFHn5BO1ZG6yCf47A9DcDc6e48D5AeAaA57bB01a0962",
  • 运行程序
python app.py

bg right:50% w:440px

朋友聊天

  • 如果你使用自己的号登录,就不能与机器人聊天,如:@bot hello 就没有反应。

bg left:50% w:440px

群组聊天

  • 在群里面聊天,群里的任何人都可以与机器人聊天,如:现在我就可以在群里 @bot

  • 支持多轮会话。

谢 谢 !

🤖

智能问答助手

⏳ 初始化...

💡 配置和聊天记录仅保存在本地浏览器中