DMXAPI 推荐主流大模型&使用代码示例

👑👑👑 LLM小萌新,体验2个是青铜,体验6个是黄金,体验10个上王者!

马上接入

🎁 API聚合,太方便了

无需逐个注册:不用再一个个注册中国所有大模型厂商开发后台了,有一个DMXAPI账号全搞定。

模型全覆盖:包括国内外超过100个大模型。

轻量使用,社群陪伴:加入LangChain中国社区超过10000名开发者一起成长,90后、00后 LLM开发者都在这里。

我对国内大模型的一点体会:我是本站站长康康。因为一直在折腾数据预处理,会需要在不同的模型测试不同的 Prompt,有了一点点体会。我的整体感觉是:国内大模型能力差距很小,大尺寸模型的能力基本都可以平替 GPT 3.5 了,但和 GPT-4 差距还是挺明显的。做RAG知识库国内模型完全胜任,但要做一些合同分析等,还是需要提升。我手头经常是几个模型一起串起来用,因为有些 prompt 你会发现就是某个模型更容易理解。我的体会是:在你迭代 prompt 前,可以先多换几个模型试试,比在一个模型上死磕 Prompt 好。

推荐学习并测试下面这些模型 模型全称 开发者平台
OpenAI:4o-mini 真香! gpt-4o-mini 开发者平台
OpenAI: 复杂逻辑、数据生成、逻辑判断等,还得上GPT-4。 gpt-4 开发者平台
OpenAI gpt-4o 开发者平台
OpenAI: gpt-4o-mini 出来后就被淘汰了,但可以感受下 gpt-3.5-turbo 开发者平台
Anthropic: 正儿八经的文案工作,可以用 claude 试试,感觉比 OPENAI 正经点。 claude-3-5-sonnet-20240620 开发者平台
Google: 中文环境不推荐用谷歌系模型 gemini-pro 开发者平台
讯飞星火大模型 SparkDesk 开发者平台
讯飞星火大模型 SparkDesk-v3.5 开发者平台
MINIMAX abab6-chat 开发者平台
MINIMAX abab5.5-chat 开发者平台
百川智能: 前搜狗王小川创办,我天天用 百小应APP,搜索方面感觉强一些。 Baichuan2-Turbo 开发者平台
字节跳动豆包大模型 doubao-pro-32k 开发者平台
百度文心一言:看你兴趣咯,百度有免费模型,可以去他们平台拿来玩,但不太聪明。 ERNIE-4.0-8K 开发者平台
智谱:国内一线大模型厂商,绕不开的GLM-4 glm-4 开发者平台
腾讯混元 hunyuan-all 开发者平台
月之暗面KIMI: KIMI家模型我比较下来,确实聪明一丢丢。 moonshot-v1-32k 开发者平台
阿里巴巴千问:Qwen系列很受欢迎 qwen2-72b-instruct 开发者平台
阿里巴巴千问 qwen-turbo 开发者平台
零一万物:李开复老师创业公司 yi-34b-chat-0205 开发者平台
阶跃星辰stepfun: 这家在上海,挺低调的,已经是万亿参数大模型。 step-2-16k-nightly 开发者平台
深度求索deepseek: 也是低调的一家模型厂商。第一个喊出百万Token ¥1元,模型能力一点不虚 deepseek-ai/deepseek-v2-chat 开发者平台
360自研大模型 360GPT_S2_V9 开发者平台

📙 知识普及:大模型 API 接口的速度衡量标准:

RPM (Requests Per Minute)

每分钟可以处理的请求数量。

RPD (Requests Per Day)‌

每天可以处理的请求数量。

IPM (Images Per Minute)‌

每分钟可以处理的图像数量。。

TPM (Tokens Per Minute)

每分钟可以处理的令牌数量。

TPD (Tokens Per Day)

每天可以处理的令牌数量。

响应时间

从请求应用端发送到大模型收到响应的时间。

Python 示例1-1: 普通Post文本对话

# 这是一个 DMXAPI 调用 API 的 Python 例子
import requests
import json

# ------------------------------------------------------------------------------------
#         3秒步接入 DMXAPI :  修改 Key 和 Base url (https://www.dmxapi.com)
# ------------------------------------------------------------------------------------
url = "https://www.dmxapi.com/v1/chat/completions"   # 这里不要用 openai base url,需要改成DMXAPI的中转 https://www.dmxapi.com ,下面是已经改好的。

payload = json.dumps({
   "model": "gpt-4o-mini",  # 这里是你需要访问的模型,改成上面你需要测试的模型名称就可以了。
   "messages": [
      {
         "role": "system",
         "content": "You are a helpful assistant."
      },
      {
         "role": "user",
         "content": "周树人和鲁迅是兄弟吗?"
      }
   ]
})
headers = {
   'Accept': 'application/json',
   'Authorization': 'sk-***********************************************', # 这里放你的 DMXapi key
   'User-Agent': 'DMXAPI/1.0.0 (https://www.dmxapi.com)',  # 这里也改成 DMXAPI 的中转URL https://www.dmxapi.com,已经改好
   'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)

Python 示例1-2: Openai官方库使用例子

# ------------------------------------------------------------------------------------
# 在 Openai官方库 中使用 DMXAPI KEY 的例子
# 需要先 pip install openai
# ------------------------------------------------------------------------------------
from openai import OpenAI

client = OpenAI(
    api_key="sk-********************************************",  # 替换成你的 DMXapi 令牌key
    base_url="https://www.dmxapi.com/v1",  # 需要改成DMXAPI的中转 https://www.dmxapi.com/v1 ,这是已经改好的。
)

chat_completion = client.chat.completions.create(
    messages=[
        {
            "role": "user",
            "content": "周树人和鲁迅是兄弟吗?",
        }
    ],
    model="gpt-4o-mini",    #  替换成你先想用的模型全称, 模型全称可以在DMXAPI 模型价格页面找到并复制。
)

print(chat_completion)

Python 示例2:Json固定格式输出 代码展示

from pydantic import BaseModel
from openai import OpenAI
from dotenv import load_dotenv
import json
from textwrap import dedent

# 加载环境变量,例如 API key 等配置信息
load_dotenv()

# 设置 OpenAI API 的工厂名称,默认为 "openai"
factory = "openai"

# 初始化 OpenAI 客户端,传入 API key 和 base URL
client = OpenAI(
    api_key="sk-***********************************************",  # 替换为你的 DMXAPI key
    base_url="https://www.dmxapi.com/v1/"   # 这里是DMXAPI的 base url,注意这里需要 /v1/
)

# 定义一个产品信息类,用于解析 API 返回的数据
class ProductInfo(BaseModel):
    product_name: str  # 产品名称,字符串类型
    price: float  # 价格,浮点数类型
    description: str  # 产品描述,字符串类型

# 定义一个提示信息,用于请求模型返回 JSON 格式的产品信息
product_prompt = '''根据给出的产品进行分析,按json格式用中文回答,json format:product_name, price, description.'''

# 获取产品信息的函数,传入用户的问题
def get_product_info(question: str):
    # 使用 OpenAI 客户端进行聊天模型的请求
    completion = client.beta.chat.completions.parse(
        model="gpt-4o-2024-08-06",  # 指定使用的模型
        messages=[
            {"role": "system", "content": dedent(product_prompt)},  # 发送系统消息,设置模型的行为
            {"role": "user", "content": question},  # 发送用户消息,用户提出问题
        ],
        response_format=ProductInfo,  # 指定返回的数据格式为 ProductInfo
    )

    # 返回模型解析的第一个选项的消息结果
    return completion.choices[0].message.parsed

# 初始化一个空的产品信息字典
product_inform = {}

# 定义将解析的结果转换为 JSON 的函数
def transform2JSON(parsed_result):
    # print(parsed_result)  # 打印解析结果

    # 将解析的结果存储到字典中
    product_inform["product_name"] = parsed_result.product_name
    product_inform["price"] = parsed_result.price
    product_inform["description"] = parsed_result.description

    # 将字典转换为 JSON 字符串并返回,ensure_ascii=False 允许中文字符正常显示
    return json.dumps(product_inform, ensure_ascii=False, indent=4)

# 定义用户输入的问题,即一个产品信息的描述
question = "75寸小米电视机"

# 调用函数获取产品信息
result = get_product_info(question)


# 将解析结果转换为 JSON 格式并打印
json_result = transform2JSON(result)
print(json_result)

Python 示例3:embedding代码例子

import openai

# 设置OpenAI API密钥和基础URL
openai.api_key = "sk-***********************************************"  # 替换为你的 DMXAPI key
openai.base_url = "https://www.dmxapi.com/v1/"  #  这里是DMXAPI的 base url,注意这里v1后面需要/,最后的 / 很容易漏掉。

def get_embedding(text):
    response = openai.embeddings.create(
        model="text-embedding-3-small",
        input=text
    )
    return response.data[0].embedding

# 示例文本
text = "这是一个示例文本,用于演示如何获取文本嵌入。"

# 获取文本嵌入
embedding = get_embedding(text)

print(f"文本: {text}")
print(f"嵌入向量维度: {len(embedding)}")
print(f"嵌入向量前5个元素: {embedding[:5]}")

Python 示例4: 2024-09-12 o1-preview 模型代码例子

# 这是一个 DMXAPI 调用 API 的 Python 例子
import requests
import json

# ------------------------------------------------------------------------------------
# 这里不要用 openai base url,需要改成DMXAPI的中转 https://www.dmxapi.com ,下面是已经改好的。
# ------------------------------------------------------------------------------------
url = "https://www.dmxapi.com/v1/chat/completions"

payload = json.dumps({
   "model": "o1-mini-2024-09-12",  # 01系列模型包括:o1-preview、o1-preview-2024-09-12、o1-mini、o1-mini-2024-09-12
   "messages": [
      # ================== 下面 2个参数,在使用 o1-preview 系列模型时,不需要填写 ==================
      #{ 
      #   "role": "system",
      #   "content": "You are a helpful assistant."
      #}, ================== 上面 2个参数,在使用 o1-preview 系列模型时,不需要填写 ==================
      {
         "role": "user",
         "content": "周树人和鲁迅是兄弟吗?"
      }
   ]
})
headers = {
   'Accept': 'application/json',
   'Authorization': 'sk-**********************************************', # 这里放你的 DMXapi key
   'User-Agent': 'DMXAPI/1.0.0 (https://www.dmxapi.com)',  # 这里也改成 DMXAPI 的中转URL https://www.dmxapi.com,已经改好
   'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data=payload,timeout=(10.0, 300.0))  # 01系列模型不支持流式输出,所以要设置 timeout,避免太长回答造成的超时。
print(response.text)

Python 示例5: LangChain使用例子

# ------------------------------------------------------------------------------------
# 在 LangChain 中使用 DMXAPI KEY 的例子
# 需要先 pip install langchain
# ------------------------------------------------------------------------------------
import os

from langchain import OpenAI
from langchain.llms import OpenAI

os.environ["OPENAI_API_KEY"] = (
    "sk-********************************************"  # 替换成你的 DMXapi 令牌key
)
os.environ["OPENAI_API_BASE"] = (
    "https://www.dmxapi.com/v1"  # 这里不要用 openai base url,需要改成DMXAPI的中转 https://www.dmxapi.com ,这是已经改好的。
)


def text():
    llm = OpenAI(temperature=0.9)
    text = "周树人和鲁迅是兄弟吗?"
    print(llm(text))


if __name__ == "__main__":
    text()

Python 示例6: Openai dall-e-3 绘图模型

import http.client
import json

# 定义 API 密钥和基本 URL
API_KEY = "sk-*****************************************************"  # 请替换为你的 DMXAPI 令牌
API_HOST = "www.dmxapi.com"  # API 主机地址
API_ENDPOINT = "/v1/images/generations"  # API 请求路径

# 请求参数
prompt_text = "科技感的店铺门口,店铺名称是DMXAPI"  # 描述生成图像的提示词
model_name = "dall-e-3"  # 使用的 AI 模型
image_size = "1024x1024"  # 图像尺寸 支持 1792x1024, 1024 × 1792, 1024x1024

# 构建请求的 JSON 数据
payload = json.dumps(
    {
        "prompt": prompt_text,
        "n": 1,  # 生产图片数量,修改会报错,默认1就可以。
        "model": model_name,
        "size": image_size,
    }
)

# 定义请求头信息
headers = {
    "Authorization": f"Bearer {API_KEY}",  # 使用变量 API_KEY
    "Accept": "application/json",
    "User-Agent": "DMXAPI/1.0.0 (https://www.dmxapi.com)",
    "Content-Type": "application/json",
}

# 建立 HTTPS 连接
conn = http.client.HTTPSConnection(API_HOST)

# 发送 POST 请求
conn.request("POST", API_ENDPOINT, payload, headers)

# 获取响应并读取数据
res = conn.getresponse()
data = res.read()

# 输出结果
print(data.decode("utf-8"))

DMXAPI 模型支持列表(持续更新中...)

# ------------------------------------------------------------------------------------
# DMXAPI,支持超过100个全球主流大模型,一行一个模型名称,方便你选择使用
# ------------------------------------------------------------------------------------
360GPT_S2_V9
360GPT_S2_V9.4
abab5.5
abab5.5-chat
abab5.5s
abab5.5s-chat
abab6
abab6-chat
abab6.5-chat
abab6.5s-chat
ahm-Phi-3-medium-128k
ahm-Phi-3-medium-4k
ahm-Phi-3-small-128k
ali-stable-diffusion-v1.5
ali-stable-diffusion-xl
babbage-002
Baichuan2-53B
Baichuan2-Turbo
Baichuan2-Turbo-192k
bge-large-8k
bge-large-en
bge-large-zh
bing-Balanced
bing-Creative
bing-Precise
BLOOMZ-7B
chatglm_lite
chatglm_pro
chatglm_std
chatglm_turbo
ChatPro
ChatStd
chirp-v2-xxl-alpha
chirp-v3-0
claude-1.3
claude-1.3-100k
claude-2
claude-2.0
claude-2.1
claude-3-5-sonnet
claude-3-5-sonnet-20240620
claude-3-haiku
claude-3-haiku-20240307
claude-3-opus
claude-3-opus-20240229
claude-3-sonnet
claude-3-sonnet-20240229
claude-instant-1.2
code-davinci-edit-001
code-llama-13b
code-llama-34b
code-llama-7b
cogvideox
command
command-light
command-light-nightly
command-nightly
command-r
command-r-plus
dall-e
dall-e-2
dall-e-3
davinci-002
deepl-en
deepl-ja
deepl-zh
deepseek-ai/DeepSeek-Coder-V2-Instruct
deepseek-ai/deepseek-llm-67b-chat
deepseek-ai/deepseek-v2-chat
deepseek-chat
deepseek-coder
domo-img-to-video
domo-video-to-video
doubao-lite-128k
doubao-lite-32k
Doubao-lite-4k
Doubao-pro-128k
Doubao-pro-32k
Doubao-pro-4k
embedding_s1_v1
embedding-2
embedding-bert-512-v1
Embedding-V1
ep-20240615021453-8wx7b
ERNIE-3.5-4K-0205
ERNIE-3.5-8K
ERNIE-3.5-8K-0205
ERNIE-3.5-8K-1222
ERNIE-4.0-8K
ERNIE-Bot
ERNIE-Bot-4
ERNIE-Bot-8K
ERNIE-Bot-turbo
ERNIE-Character-8K
ERNIE-Functions-8K
ERNIE-Lite-8K
ERNIE-Lite-8K-0308
ERNIE-Lite-8K-0922
ERNIE-Speed
ERNIE-Speed-128K
ERNIE-Speed-8K
ERNIE-Tiny-8K
farui-plus
gemini-1.0-pro-001
gemini-1.0-pro-002
gemini-1.0-pro-latest
gemini-1.0-pro-vision-001
gemini-1.0-pro-vision-latest
gemini-1.5-flash
gemini-1.5-flash-001
gemini-1.5-flash-latest
gemini-1.5-flash-preview-0514
gemini-1.5-pro
gemini-1.5-pro-001
gemini-1.5-pro-exp-0801
gemini-1.5-pro-latest
gemini-1.5-pro-preview-0514
gemini-experimental
gemini-pro
gemini-pro-1.5
gemini-pro-vision
gemini-ultra
gemma-7b-it
glm-3-turbo
glm-4
glm-4-0520
glm-4-air
glm-4-airx
glm-4-flash
glm-4v
google/gemma-2-27b-it
google-palm
gpt-3.5-net
gpt-3.5-turbo
gpt-3.5-turbo-0125
gpt-3.5-turbo-0301
gpt-3.5-turbo-0613
gpt-3.5-turbo-1106
gpt-3.5-turbo-16k
gpt-3.5-turbo-16k-0613
gpt-3.5-turbo-instruct
gpt-4
gpt-4-0125-preview
gpt-4-0314
gpt-4-0613
gpt-4-1106-preview
gpt-4-32k
gpt-4-32k-0314
gpt-4-32k-0613
gpt-4-all
gpt-4-dalle
gpt-4-gizmo
gpt-4-gizmo-*
gpt-4-net
gpt-4o
gpt-4o-2024-08-06
gpt-4o-2024-05-13
gpt-4o-all
gpt-4o-mini
gpt-4o-mini-2024-07-18
gpt-4-turbo
gpt-4-turbo-2024-04-09
gpt-4-turbo-preview
gpt-4-v
gpt-4-vision-compatible
gpt-4-vision-preview
gpt-5-gizmo*
Gryphe/MythoMax-L2-13b
haiku
hunyuan
hunyuan-all
hunyuan-lite
hunyuan-pro
hunyuan-standard
hunyuan-standard-256K
jina-clip-v1
jina-reranker-v2-base-multilingual
llama-2-13b
llama-2-70b
llama2-70b-4096
llama-2-7b
llama-3.1-405b-instruct
llama-3.1-70b
llama-3.1-70b-versatile
llama-3.1-8b-instant
llama-3-70b
llama3-70b-8192
llama-3-8b
llama3-8b-8192
meta/llama3-8B-chat
microsoft/WizardLM-2-8x22B
mistral-7b-instruct
mistral-embed
Mistral-large-2407
mistral-large-latest
mistral-medium
mistral-medium-latest
mistral-small-latest
mixtral-8x22b
mixtral-8x7b
mixtral-8x7b-32768
mixtral-8x7b-instruct
moonshot-v1-128k
moonshot-v1-32k
moonshot-v1-8k
net-gpt-3.5-turbo
net-gpt-3.5-turbo-0314
net-gpt-3.5-turbo-0613
net-gpt-3.5-turbo-16k
net-gpt-3.5-turbo-16k-0314
net-gpt-3.5-turbo-16k-0613
net-gpt-4
net-gpt-4-0125-preview
net-gpt-4-0314
net-gpt-4-0613
net-gpt-4-1106-preview
net-gpt-4-32k
net-gpt-4o
net-gpt-4-turbo
net-gpt-4-turbo-preview
open-mistral-7b
open-mixtral-8x7b
opus
PaLM-2
pika-text-to-video
Qwen/Qwen2-1.5B-Instruct
Qwen/Qwen2-57B-A14B-Instruct
Qwen/Qwen2-72B-Instruct
Qwen/Qwen2-7B-Instruct
qwen1.5-110b-chat
qwen1.5-14b-chat
qwen1.5-32b-chat
qwen1.5-72b-chat
qwen1.5-7b-chat
qwen2-1.5b-instruct
qwen2-57b-a14b-instruct
qwen2-72b-instruct
qwen2-7b-instruct
qwen-72b
qwen-long
qwen-max
qwen-max-1201
qwen-max-longcontext
qwen-plus
qwen-turbo
rerank-english-v2.0
rerank-english-v3.0
rerank-multilingual-v2.0
rerank-multilingual-v3.0
search-gpts
search-gpts-chat
semantic_similarity_s1_v1
sonar-medium-chat
sonar-medium-online
sonar-small-chat
sonar-small-online
sonnet
sonnet3.5
sora-1.0-turbo
SparkDesk
SparkDesk-4.0Ultra
SparkDesk-v1.1
SparkDesk-V2.0
SparkDesk-v2.1
SparkDesk-v3.1
SparkDesk-v3.5
SparkDesk-v4.0
step-1-200k
step-1-32k
swap_face
tao-8k
text-ada-001
text-babbage-001
text-curie-001
text-davinci-002
text-davinci-003
text-davinci-edit-001
text-embedding-3-large
text-embedding-3-small
text-embedding-ada-002
text-embedding-v1
text-moderation-latest
text-moderation-stable
THUDM/glm-4-9b-chat
tts-1
tts-1-1106
tts-1-hd
tts-1-hd-1106
whisper-1
WizardLM/WizardCoder-Python-34B-V1.0
yi-34b-chat-0205
yi-34b-chat-200k
yi-large
yi-large-rag
yi-large-turbo
yi-medium
yi-vl-plus

👩‍💻 注意事项 & 客服

本群仅供LLM初学者学习使用,不对速度和稳定性负责。本站使用问题或咨询 [企业级服务],请扫我:

微信二维码