8 篇文章带有标签 “OpenAI API”

iFlow CLI

可以手动修改配置文件:~/.iflow/settings.json

{
  "cna": "dp3vIQIkkhcCAXyAlGrAY4my",
  "selectedAuthType": "openai-compatible",
  "searchApiKey": "sk-72c24939a1ac137a28e990cdee4d5d7f",
  "baseUrl": "http://localhost:11434/v1",
  "apiKey": "NONE",
  "modelName": "qwen3-coder:latest",
  "bootAnimationShown": true
}

不能使用工具(todo, write_file 等),不可用。

Docker AI 功能详解与应用

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

registry-mirrors: https://registry.cn-hangzhou.aliyuncs.

Open WebUI

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

编写配置文件: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 run -d -p 3000:8080 --name open-webui --restart always \
    -e USE_EMBEDDING_MODEL= \
    -e OPENAI_API_BASE_URL=http://172.16.33.66:9997/v1 \
    -e OPENAI_API_KEY=NONE \
    -v open-webui:/app/backend/data \
    ghcr.io/open-webui/open-webui:main

OpenAI API Compatibility

  • Ollama: 11434
  • LiteLLM: 4000
  • XInference: 9997
  • MindIE: 1025
  • curl -s: -s 选项表示静默模式,不输出进度信息。
  • jq -r: -r 选项表示以原始格式输出,去掉了引号。

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

  • 单引号 (')
    • 完全字面值:单引号内的内容被视为字面值,不会对其中的任何字符进行扩展或解析。
    • 变量不扩展:在单引号内,变量不会被解析。例如,'LITELLMAPIKEY会被视为字符LITELLM_API_KEY' 会被视为字符串 'LITELLM_API_KEY',而不是变量的值。
    echo '$LITELLM_API_KEY'  # 输出: $LITELLM_API_KEY
    
  • 双引号 (")
    • 允许扩展:双引号内的内容会进行解析和扩展。
    • 变量扩展:在双引号内,变量会被解析。例如,"$LITELLM_API_KEY" 会被替换为该变量的值。
    • 特殊字符处理:某些字符(如 $ 和 \)在双引号内需要用反斜杠转义。
    echo "$LITELLM_API_KEY"  # 输出: 变量的实际值(例如: sk-1234)
    

OpenAI API Documentation Chat Completion

主要输入是消息参数。消息必须是一个消息对象数组,其中每个对象都有一个角色("system"、"user"、"assistant")和内容("content")。

通常,对话首先使用 "system" 消息进行格式化,然后是交替的 "user" 和 "assistant" 消息。

"system" 消息有助于设置 "assistant" 的行为。

例如,字符串 "ChatGPT is great!" 被编码为六个 token: ["Chat", "G", "PT", " is", " great", "!"].

要查看 API 调用使用了多少 token ,请检查 API 响应中的 usage 字段(例如,response['usage']['total_tokens'])。

例子 messages = [ {"role": "system

OpenAI API Documentation Embeddings

嵌入是浮点数的向量(列表)。两个向量之间的距离衡量它们的相关性。小距离表示高相关性,大距离表示低相关性。

注意这上下界对任何维度的向量空间中都适用,而且余弦相似性最常用于高维正空间。例如在信息检索中,每个词项被赋予不同的维度,而一个文档由一个向量表示,其各个维度上的值对应于该词项在文档中出现的频率。余弦相似度因此可以给出两篇文档在其主题方面的相似度。

OpenAI 推荐余弦相似度计算距离。距离函数的选择通常无关紧要,但是,余弦相似度计算距离的速度比欧几里得距离快得多,因为它不需要计算平方根。此外,余弦相似度的范围是[-1,1],而欧几里得距离的范围是[0,∞)。因此,余弦相似度的范围更适合于搜索。

好评例子的评分 : 0.036553
差评例子的评分 : -0.026165

{% highlight wjj %} 值 = 评论的embedding与好评embedding的余弦相似度 - 评论embedding与差评embedding的余弦相似度 值 > 0,倾向于好评 值 < 0,倾向于差评 {% endhighlight %}

comment evaluation
0 买的银色版真的很好看,一天就到了,晚上就开始拿起来完系统很丝滑流畅,做工扎实,手感细腻,很精致哦苹果一如既往的好品质
1 降价厉害,保价不合理,不推荐

{% highlight wjj %} distanc

OpenAI API Documentation 快速入门

在给定的 API 请求中处理的令牌数量取决于输入和输出的长度。根据粗略的经验法则,对于英文文本,1 个标记大约为 4 个字符或 0.75 个单词。要记住的一个限制是,您的文本提示和生成的完成组合不能超过模型的最大上下文长度(对于大多数模型,这是 2048 个标记,或大约 1500 个单词)。

I have an orange cat named Butterscotch.

I`` have`` an`` orange`` cat`` named`` But``ters``cot``ch``.

像“cat”这样的常用词是单个标记,而不太常用的词通常被分解成多个标记。例如,“Butterscotch”翻译成四个标记:“But”、“ters”、“cot”和“ch”。许多标记以空格开头,例如“ hello”和“ bye”。

temperature 通常最好为所需输出明确定义的任务设置较低。较高的 temperature 对于需要多样性或创造力的任务可能很有用。

参考 了解标记和概率 有更好图形化展示。

安装 Python 库:

pip install openai

安装后,您可以使用绑定和您的密钥运行以下命令: