14 篇文章带有标签 “openai-api”

Pi Agent Event Examples

事件流

事件类型

事件 描述
agent_start 智能体开始处理
agent_end 运行的最终事件。为此事件等待的订阅者仍会计入结算
turn_start 新轮次开始(一次 LLM 调用 + 工具执行)
turn_end 轮次完成,包含助手消息和工具结果
message_start 任何消息开始(user、assistant、toolResult)
message_update 仅限助手。 包含带有增量的 assistantMessageEvent
message_end 消息完成
tool_execution_start 工具开始执行
tool_execution_update 工具流式传输进度
tool_execution_end 工具执行完成

prompt() 事件序列

当你调用 prompt("Hello") 时:

需求即代码:ZeroAI 让开发触手可及

ZeroAI 是一个通用的 AI 驱动软件开发助手,能够按照标准化的五步流程开发任意软件应用。从需求理解到代码生成,让 AI 帮你完成整个软件开发周期。

特性

  • 🚀 五步开发流程:需求分析 → 接口设计 → 数据库设计 → 业务逻辑设计 → 代码生成
  • 💾 版本管理:完整的项目版本控制,支持创建、查看和加载历史版本
  • 📝 Word 导出:一键导出项目文档到 Word 格式
  • 🎯 交互式审查:每一步生成结果都可查看、审批或重新生成
  • 📊 实时日志:完整记录 AI 开发过程中的所有操作和输出
  • 🔄 数据持久化:使用 SQLite 数据库存储项目数据

技术栈

核心依赖

  • 框架: Next.js 16 (App Router)
  • 语言: TypeScript
  • 样式: Tailwind CSS 4
  • 数据库: Better-SQLite3
  • AI: OpenAI API (兼容 LongCat 等第三方 API)
  • 文档导出: docx

测试依赖

  • 测试框架: Vitest
  • 测试 UI: Vitest UI
  • React 测试: @testing-library/react
  • DOM 断言: @testing-library/jest-dom
  • 用户事件: @testing-library/user-event
  • 浏览器环境: jsdom

快速开始

环境配置

  1. 复制环境变量模板:
cp .env.example .env

Docker AI 功能详解与应用

本文档详细介绍了 Docker AI 的新功能,旨在通过集成人工智能提升开发者的体验。主要亮点包括 Docker Model Runner,它简化了 AI 模型的管理和部署,支持从各种注册表拉取和运行模型,并通过兼容 OpenAI 的 API 提供服务。此外,MCP Toolkit 实现了容器化 MCP 服务器的无缝设置和管理,而 Ask Gordon 则作为嵌入式 AI 助手,在 Docker Desktop 和 CLI 中提供上下文帮助,包括改进 Dockerfile 和故障排除等。这些功能共同旨在简化 AI 驱动型应用程序的开发和部署。

Docker AI 配置

  • ✅ Enable Docker AI (启用 Docker AI)
    • Docker Desktop命令行(CLI)中启用 “Ask Gordon” 功能。
  • ✅ Enable Docker Model Runner (启用 Docker 模型运行器)
    • 启用 GPU 加速的推理引擎,用于运行 AI 模型。
  • ✅ Enable Docker MCP Toolkit (启用 Docker MCP 工具套件)
    • 在 Docker Desktop 中启用 “MCP Toolkit” 功能。

探索多模态大模型 Qwen2.5-VL

本文档提供了一篇关于Qwen2.5-VL 多模态大模型的详细指南,涵盖了从模型架构、性能到实际部署和使用的各个方面。它不仅介绍了如何下载不同版本(如 3B 和 7B Instruct)的模型,还提供了安装和启动模型的命令行指令。此外,文档还展示了如何通过 cURL 命令测试模型,并给出了一个使用 OpenAI API 与 Qwen2.5-VL 进行交互的 Python 示例代码,该代码专注于图像中的火灾、烟雾和安全帽佩戴情况检测,支持本地和网络图片。

Qwen2.5-VL

模型架构

模型性能

魔搭下载

在下载前,请先通过如下命令安装 ModelScope

pip install modelscope

Qwen2.5-VL-3B-Instruct

modelscope download --model Qwen/Qwen2.5-VL-3B-Instruct --local_dir Qwen2.5-VL-3B-Instruct

Qwen2.5-VL-7B-Instruct

modelscope download --model Qwen/Qwen2.5-VL-7B-Instruct --local_dir Qwen2.5-VL-7B-Instruct

默认存储到 ~/.

Open WebUI

下载镜像

docker pull ghcr.io/open-webui/open-webui:main

运行

Docker Compose (Ollama)

编写配置文件:docker-compose.yml

version: '3'
services:
  openwebui:
    image: ghcr.io/open-webui/open-webui:main
    extra_hosts:
      - host.docker.internal:host-gateway    
    ports:
      - "3000:8080"
    volumes:
      - open-webui:/app/backend/data
volumes:
  open-webui:
docker compose up

Docker (OpenAI API)

OpenAI API Compatibility

设置 API Key

export LITELLM_API_KEY=sk-1234

服务端口

  • Ollama: 11434
  • LiteLLM: 4000
  • XInference: 9997
  • MindIE: 1025

models

Ollama

curl -s http://localhost:11434/v1/models \
    | jq -r '.data[].id'
  • curl -s: -s 选项表示静默模式,不输出进度信息。
  • jq -r: -r 选项表示以原始格式输出,去掉了引号。

LiteLLM

curl -s http://localhost:4000/v1/models \
    -H "Authorization: Bearer $LITELLM_API_KEY" \
    | jq -r '.data[].id'

在 Bash 中,单引号和双引号的使用有一些重要的区别:

  • 单引号 (')
    • 完全字面值:单引号内的内容被视为字面值,不会对其中的任何字符进行扩展或解析。
    • 变量不扩展:在单引号内,变量不会被解析。例如,'LITELLMAPIKEY会被视为字符LITELLM_API_KEY' 会被视为字符串 'LITELLM_API_KEY',而不是变量的值。
    echo '$LITELLM_API_KEY'  # 输出: $LITELLM_API_KEY
    

Dify

Dify

介绍

Dify 是一款开源的大语言模型(LLM) 应用开发平台。提供从 Agent 构建到 AI workflow 编排、RAG 检索、模型管理等能力,轻松构建和运营生成式 AI 原生应用。你可以基于任何模型自部署类似 Assistants API 和 GPTs 的能力,在灵活和安全的基础上,同时保持对数据的完全控制。

开发语言

语言 占比
TypeScript 49.9%
Python 45.5%
MDX 3.1%
CSS 0.9%
JavaScript 0.4%
SCSS 0.2%

配置兼容 OpenAI API(SiliconFlow)

Continue Code LLM Autopilot

Continue

注册 deepseek 的开发平台

OpenAI API

DeepSeek API 使用与 OpenAI 兼容的 API 格式,通过修改配置,您可以使用 OpenAI SDK 来访问 DeepSeek API,或使用与 OpenAI API 兼容的软件。

参数 值 base_url    https://api.deepseek.com/v1 api_key 申请 api_key

参数
base_url https://api.deepseek.com/v1
api_key YOUR_API_KEY

模型

模型 描述 上下文长度
deepseek-coder 擅长处理编程任务 16K
deepseek-chat 擅长通用对话任务 16K

安装 IntelliJ IDEA 插件 Continue

配置 deepseek-coder { "models": [ { "title": "deepseek api", "provider": "openai", "model": &quot

Together AI - The fastest cloud platform for building and running generative AI

用于构建和运行生成式人工智能的最快云平台

注册 Together AI 的开发平台

Together AI Playground

速度非常快

Together AI Inference

OpenAI API from openai import OpenAI import os TOGETHER_API_KEY = os.environ.get("TOGETHER_API_KEY") client = OpenAI( api_key=TOGETHER_API_KEY, base_url='https://api.together.xyz/v1', ) chat_completion = client.chat.completions.create( messages=[ { "role": "system", "content": "You are an expert travel guide.", }, { "role": "user", "content": "Tell me fun things to do in San Francisco.

使用 llama.cpp 构建兼容 OpenAI API 服务

[llama.cpp][llama.cpp]

模型量化 量化类型 ./quantize --help Allowed quantization types: 2 or Q4_0 : 3.56G, +0.2166 ppl @ LLaMA-v1-7B 3 or Q4_1 : 3.90G, +0.1585 ppl @ LLaMA-v1-7B 8 or Q5_0 : 4.33G, +0.0683 ppl @ LLaMA-v1-7B 9 or Q5_1 : 4.70G, +0.0349 ppl @ LLaMA-v1-7B 19 or IQ2_XXS : 2.06 bpw quantization 20 or IQ2_XS : 2.31 bpw quantization 10 or Q2_K : 2.63G, +0.6717 ppl @ LLaMA-v1-7B 21 or Q2_K_S : 2.16G, +9.0634 ppl @ LLaMA-v1-7B 12 or Q3_K : alias for Q3_K_M 11 or Q3_K_S : 2.75G, +0.5551 ppl @ LLaMA-v1-7B 12 or Q3_K_M : 3.07G, +0.2496 ppl @ LLaMA-v1-7B 13 or Q3_K_L : 3.35G, +0.

使用 FastChat 在 CUDA 上部署 LLM

安装 FastChat & vLLM

安装 FastChat

pip install "fschat[model_worker,webui]"

安装 FlashAttention

  • Turing GPU T4 不支持 FlashAttention 2,需要使用 FlashAttention 1.x 。
  • Turing GPU T4 不支持 bf16,需要使用 fp16

安装 vLLM

pip install vllm -i https://mirrors.aliyun.com/pypi/simple/

升级 FastChat & vLLM

git pull
pip install -e ".[model_worker,webui]"
pip install -U vllm

部署 LLM

运行 Controller

python -m fastchat.serve.controller

运行 OpenAI API Server

python -m fastchat.serve.openai_api_server

运行 Model Worker Qwen-1_8B-Chat export CUDA_VISIBLE_DEVIC

在 MacBook Pro M2 Max 上安装 FastChat

FastChat

FastChat 是一个开放平台,用于训练、服务和评估基于大型语言模型的聊天机器人。

FastChat Server 架构图

安装 FastChat

克隆代码

git clone https://github.com/lm-sys/FastChat
cd FastChat

创建虚拟环境

python -m venv env
source env/bin/activate

安装

pip install --upgrade pip
pip install -e ".[model_worker,webui]"

升级 FastChat

git pull
pip install -e ".[model_worker,webui]"

创建大模型链接 LLM Qwen mkdir Qwen ln -s /Users/junjian/HuggingFace/Qwen/Qwen-14B-Chat Qwen/Qwen-14B-Chat ln -s /Users/junjian/HuggingFace/Qwen/Qwen-1_8B Qwen/Qwen-1_8B ln -s /Users/junjian/HuggingFace/Qwen/Qwen-1_8B-Chat Qwen/Qwen-1_8B-Chat ln

AI 大模型基础服务架构图

大模型基础服务架构图

<center>
<div class="mermaid">
%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart TB
  subgraph tool[聊天工具]
    direction TB
    chatgpt-next(ChatGPT Next Web)
    langchain-chatchat(Langchain-Chatchat)
    wechat(chatgpt-on-wechat)
  end
  subgraph business-application[业务应用层]
    direction TB
    app1(发电)
    app2(调度)
    app3(输变电)
// ...

代码大模型基础服务架构图