AI Personal Learning
und praktische Anleitung
讯飞绘镜

Smart Spectrum veröffentlicht ein kostenloses Vision-Modell GLM-4V-Flash Gleichzeitigkeitsgrenze auf 10 erhöht, dieses Mal genug für Produktionsumgebungen

Baureihe GLM-4V

Die GLM-4V-Serie besteht aus 3 Modellen für unterschiedliche Anwendungsszenarien.

  • GLM-4V-Plus: Bietet ein ausgezeichnetes multimodales Verständnis, kann bis zu 5 Bilder gleichzeitig verarbeiten und unterstützt das Verständnis von Videoinhalten für komplexe Multimedia-Analyseszenarien.
  • GLM-4V: Es konzentriert sich auf das Verstehen von Bildinhalten und ist in der Lage, bis zu 5 Bilder gleichzeitig zu analysieren und eignet sich für Situationen, in denen ein tiefes Bildverständnis erforderlich ist.
  • GLM-4V-Flash (kostenlos): Konzentriert sich auf effizientes Einzelbildverständnis für Szenarien mit schneller Bildauflösung, wie Echtzeit-Bildanalyse oder Stapelverarbeitung.

synchroner Aufruf

Schnittstellenanfrage

Typologie Anweisungen
Übertragungsverfahren https
Anfrageadresse https://open.bigmodel.cn/api/paas/v4/chat/completions
Aufrufmethode Synchroner Aufruf, der darauf wartet, dass das Modell die Ausführung beendet und das Endergebnis zurückgibt oder SSE-Aufruf
Zeichenkodierung UTF-8
Format der Schnittstellenanforderung JSON
Antwortformat JSON oder Standard Stream Ereignis
Art der Schnittstellenanforderung POST
Entwicklungssprache Jede Entwicklungssprache, die http-Anfragen initiieren kann.

Abfrageparameter

Name des Parameters Typologie Pflichtfeld Beschreibung der Parameter
Modell Zeichenfolge sein Die Modellkodierung des Aufrufs. Modellcodes: glm-4v-plus , glm-4v, glm-4v-flash (frei)
Nachrichten Liste sein Beim Aufruf des Sprachmodells wird eine Liste aktueller Dialognachrichten als Hinweis an das Modell übergeben, wobei die Parameter in Form von json-Arrays übergeben werden. Zum Beispiel der Parameter für das Videoverständnis:{ "role": "user", "content": [ { "type": "video_url", "video_url": { "url" : "https://xxx/xx.mp4" } }, { "type": "text", "text": "请仔细描述这个视频" } ] }Parameter des Bildverständnisses:{ "role": "user", "content": [ { "type": "image_url", "image_url": { "url" : "https://xxx/xx.jpg" } }, { "type": "text", "text": "解释一下图中的现象" } ] }Mögliche Nachrichtentypen sind Benutzermeldung, Assistentenmeldung. Siehe die Beschreibungen der Nachrichtenfelder unten.
anfrage_id Zeichenfolge Verstopft Durch den Benutzer übergeben, müssen die Einzigartigkeit zu gewährleisten; verwendet, um zwischen der eindeutigen Identität der einzelnen Anfrage zu unterscheiden, der Benutzer nicht passieren die Plattform wird standardmäßig generiert werden.
tun_probe Boolesche Verstopft Die Probenahmestrategie ist aktiviert, wenn do_sample true ist, und die Probenahmestrategien temperature und top_p werden nicht wirksam, wenn do_sample false ist.
Strom Boolesche Verstopft Dieser Parameter sollte auf "Fasle" gesetzt oder weggelassen werden, wenn synchrone Aufrufe verwendet werden. Wenn er auf True gesetzt ist, gibt das Modell den gesamten Inhalt auf einmal zurück, nachdem es den gesamten Inhalt erzeugt hat. Wenn er auf True gesetzt ist, gibt das Modell den vom Modell generierten Inhalt in einem Standard-Ereignisstrom zurück, einen Block nach dem anderen, und am Ende des Ereignisstroms gibt es eindata: [DONE]Nachricht.
Temperatur Schwimmer Verstopft Probentemperatur, Kontrolle der Zufälligkeit der Ausgabe, muss positiv sein Der Bereich der Werte ist:[0.0,1.0]Der Standardwert ist 0,8, je größer der Wert ist, desto zufälliger und kreativer ist die Ausgabe; je kleiner der Wert ist, desto stabiler oder sicherer ist die Ausgabe. Es wird empfohlen, den Wert je nach Anwendungsszenario anzupassen. top_p vielleicht temperature Parameter, aber nicht beide Parameter gleichzeitig einstellen
top_p Schwimmer Verstopft Eine andere Methode der Probenahme mit der Temperatur, die so genannte Kernel-Probenahme Der Wertebereich ist:[0.0, 1.0]Der Standardwert ist 0,6 Modelle werden als top_p Wahrscheinlichkeitsmasse Token Ein Wert von 0,1 bedeutet beispielsweise, dass der Modelldecoder nur Token aus der Kandidatengruppe der Wahrscheinlichkeiten des früheren 10% berücksichtigt. Es wird empfohlen, das Modell an Ihr Anwendungsszenario anzupassen. top_p vielleicht temperature Parameter, aber nicht beide Parameter gleichzeitig einstellen
max_tokens Integer Verstopft Maximale Modellausgabe-Token, Standardwert ist 1024, maximale Unterstützung 1024tokens.
Benutzer_id Zeichenfolge Verstopft Eine eindeutige ID für den Endnutzer, die es der Plattform ermöglicht, bei Verstößen des Endnutzers, bei der Generierung illegaler und unerwünschter Informationen oder bei anderen missbräuchlichen Verhaltensweisen einzugreifen. ID-Länge: mindestens 6 Zeichen, maximal 128 Zeichen.

Format der Meldungen

Zu den zulässigen Nachrichtentypen für das Modell gehören Benutzernachricht, Assistentennachricht, und das Format variiert für die verschiedenen Nachrichtentypen. Die Details sind wie folgt:

Benutzer-Nachricht

Name des Parameters Typologie Pflichtfeld Beschreibung der Parameter
Rolle Zeichenfolge sein Die Rolleninformationen für die Nachricht sollten lautenuser
Inhalt Liste sein Inhalt der Nachricht.
Typ Zeichenfolge sein Texttyp: text Bildtyp: image_url Videotyp: video_url Video- und Bildtypen können nicht gleichzeitig eingegeben werden
Text Zeichenfolge sein Ergänzend, wenn der Typ Text ist
bild_url Objekt sein Wenn der Typ image_url ist, fügen Sie
url Zeichenfolge sein Bild-URL oder base64-Kodierung. Die maximale Bildgröße beträgt weniger als 5M pro Bild und nicht mehr als 6000*6000 Pixel. Die Formate jpg, png und jpeg werden unterstützt. Hinweis: GLM-4V-Flash unterstützt keine base64-Kodierung.
video_url Objekt sein Wenn der Typ video_url ist, muss der video_url-Parameter der erste sein, wenn nur glm-4v-plus Videoeingabe-Videoverständnis unterstützt.
url Zeichenfolge sein Video url. Videogröße wird nur bis zu 20M unterstützt, Videodauer ist nicht länger als 30s. unterstützter Videotyp mp4.

Assistentin Nachricht

Name des Parameters Typologie Pflichtfeld Beschreibung der Parameter
Rolle Zeichenfolge sein Die Rolleninformationen für die Nachricht sollten lautenassistant
Inhalt Zeichenfolge sein Nachricht

Antwort-Parameter

Name des Parameters Typologie Beschreibung der Parameter
id Zeichenfolge Aufgaben-ID
erstellt Lang Die Erstellungszeit der Anfrage, die ein Unix-Zeitstempel in Sekunden ist.
Modell Zeichenfolge Name des Modells
Auswahlmöglichkeiten Liste Inhalt der Modellausgabe für den aktuellen Dialog
Index Integer Ergebnis Teilstriche
finish_reason Zeichenfolge Gründe für die Beendigung des Modelldenkens.stopStellt das natürliche Ende der Argumentation dar oder löst ein Stoppwort aus.length bedeutet, dass die Obergrenze der Tokenlänge erreicht ist.sensitive Stellt den Inhalt der Modellinferenz dar, der von der Sicherheitsaudit-Schnittstelle abgefangen wird.network_error steht für Anomalien bei der Modellinferenz.
Nachricht Objekt Vom Modell zurückgegebene Textnachricht
Rolle Zeichenfolge Die Rolle des aktuellen Dialogs, derzeit standardmäßig der Assistent (Modell)
Inhalt Liste Inhalt des aktuellen Dialogs
Verwendung Objekt Gibt die Anzahl der Token für diesen Modellaufruf am Ende des Prozesses zurück.
prompt_tokens Integer Anzahl der vom Benutzer eingegebenen Token
abschluss_tokens Integer Anzahl der vom Modell ausgegebenen Token
gesamt_tokens Integer Token insgesamt
inhalt_filter Liste Zurück zu Informationen über die Sicherheit von Inhalten
Rolle Zeichenfolge Verbindungen zum Inkrafttreten der Sicherheit, einschließlichrole = assistant Modellierung der Argumentation.role = user Benutzereingabe.role = history historischer Zusammenhang
Ebene Integer Schweregrad 0-3, wobei der Schweregrad 0 der schwerste und 3 der am wenigsten schwere ist.

Beispiel für einen Antrag

Video-URL hochladen

#视频理解示例、上传视频URL
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="YOUR API KEY") # 填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4v-plus",  # 填写需要调用的模型名称
messages=[
{
"role": "user",
"content": [
{
"type": "video_url",
"video_url": {
"url" : "https://sfile.chatglm.cn/testpath/video/xxxxx.mp4"
}
},
{
"type": "text",
"text": "请仔细描述这个视频"
}
]
}
]
)
print(response.choices[0].message)

Video hochladen Base64

import base64
from zhipuai import ZhipuAI
video_path = "/Users/YourCompluter/xxxx.mp4"
with open(video_path, 'rb') as video_file:
video_base = base64.b64encode(video_file.read()).decode('utf-8')
client = ZhipuAI(api_key="YOUR API KEY") # 填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4v-plus",  # 填写需要调用的模型名称
messages=[
{
"role": "user",
"content": [
{
"type": "video_url",
"video_url": {
"url" : video_base
}
},
{
"type": "text",
"text": "请仔细描述这个视频"
}
]
}
]
)
print(response.choices[0].message)

Bild-URL hochladen

from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4v",  # 填写需要调用的模型名称
messages=[
{
"role": "user",
"content": [
{
"type": "text",
"text": "图里有什么"
},
{
"type": "image_url",
"image_url": {
"url" : "https://img1.baidu.com/it/u=1369931113,3388870256&fm=253&app=138&size=w931&n=0&f=JPEG&fmt=auto?sec=1703696400&t=f3028c7a1dca43a080aeb8239f09cc2f"
}
}
]
}
]
)
print(response.choices[0].message)

Bild hochladen Base64

import base64
from zhipuai import ZhipuAI
img_path = "/Users/YourCompluter/xxxx.jpeg"
with open(img_path, 'rb') as img_file:
img_base = base64.b64encode(img_file.read()).decode('utf-8')
client = ZhipuAI(api_key="YOUR API KEY") # 填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4v-plus",  # 填写需要调用的模型名称
messages=[
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": img_base
}
},
{
"type": "text",
"text": "请描述这个图片"
}
]
}
]
)
print(response.choices[0].message)

Mehrere Runden von Bilddialogen

from zhipuai import ZhipuAI
client = ZhipuAI(api_key="YOUR API KEY") # 填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4v-plus",  # 填写需要调用的模型名称
messages=[
{
"content": [
{
"image_url": {
"url": "https://cdn.bigmodel.cn/xxxxxx.png"
},
"type": "image_url"
},
{
"text": "图中有什么",
"type": "text"
}
],
"role": "user"
},
{
"content": [
{
"text": "这是一幅描绘自然风景的画,展现了一片宁静的湖泊,湖水呈现出深浅不一的蓝绿色调。湖边长着一棵盛开的樱花树,粉白色的花朵在阳光下显得格外鲜艳。树下有一位身穿蓝色衣服的人坐在船上,似乎正在享受这美好的时光。\n\n背景是连绵起伏的山脉,山体被绿色的植被覆盖,山顶则被云雾缭绕,增添了几分神秘感。远处还可以看到一座小亭子,它坐落在湖边的岩石上,与周围的自然环境和谐相融。\n\n整个画面给人一种宁静、和谐的感觉,仿佛置身于一个世外桃源之中。",
"type": "text"
}
],
"role": "assistant"
},
{
"content": [
{
"image_url": {
"url": "https://cdn.bigmodel.cn/xxxxxxx.jpeg"
},
"type": "image_url"
},
{
"text": "这个图与上面图有什么不一样",
"type": "text"
}
],
"role": "user"
},
{
"content": [
{
"text": "第一张图和第二张图在画面内容、构图、色彩等方面都有很大的不同,形成鲜明的对比。\n\n1.第一张图是风景画,主要描绘了自然风景,如樱花树、湖泊、山脉等,色彩丰富,充满春天的气息,而第二张图是描绘长城在冬季的风景照片,长城在白雪覆盖的山脉中蜿蜒盘旋,整体色调偏冷,给人一种寒冷、宁静的感觉。\n\n2.构图上,第一张图采用对称式构图,以樱花树为中心,两侧的景物相互呼应,形成平衡和谐的画面效果,第二张图则采用对角线构图,长城作为视觉引导线,引导观众的视线穿越整个画面,增加画面的深度和动态感。\n\n整体来看,这两张图在画面内容、色彩、构图和氛围上都呈现出明显的对比,一张是充满生机和色彩的春日风景画,另一张是宁静而神秘的冬日长城风景照。",
"type": "text"
}
],
"role": "assistant"
},
{
"content": [
{
"image_url": {
"url": "https://cdn.bigmodel.cn/xxxxxxx.jpeg"
},
"type": "image_url"
},
{
"text": "这个图与上一张图有什么区别",
"type": "text"
}
],
"role": "user"
}
]
)
print(response.choices[0].message)

Beispielhafte Antwort

{
"created": 1703487403,
"id": "8239375684858666781",
"model": "glm-4v-plus",
"request_id": "8239375684858666781",
"choices": [
{
"finish_reason": "stop",
"index": 0,
"message": {
"content": "图中有一片蓝色的海和蓝天,天空中有白色的云朵。图片的右下角有一个小岛或者岩石,上面长着深绿色的树木。",
"role": "assistant"
}
}
],
"usage": {
"completion_tokens": 37,
"prompt_tokens": 1037,
"total_tokens": 1074
}
}

Streaming-Ausgang

Antwort-Parameter

Name des Parameters Typologie Beschreibung der Parameter
id Zeichenfolge Aufgaben-ID
erstellt Lang Die Erstellungszeit der Anfrage, die ein Unix-Zeitstempel in Sekunden ist.
Auswahlmöglichkeiten Liste Inhalt der Modellausgabe für den aktuellen Dialog
Index Integer Ergebnis Teilstriche
finish_reason Zeichenfolge Gründe für die Beendigung des Modelldenkens.stopStellt das natürliche Ende der Argumentation dar oder löst ein Stoppwort aus.length bedeutet, dass die Obergrenze der Tokenlänge erreicht ist.sensitive Stellt den Inhalt der Modellinferenz dar, der von der Sicherheitsaudit-Schnittstelle abgefangen wird.network_error steht für Anomalien bei der Modellinferenz.
delta Objekt Vom Modell-Inkrement zurückgegebene Textnachricht
Rolle Zeichenfolge Die Rolle des aktuellen Dialogs, derzeit standardmäßig der Assistent (Modell)
Inhalt Zeichenfolge Inhalt des aktuellen Dialogs
Verwendung Objekt Statistik über die Anzahl der von diesem Modell aufgerufenen Token
prompt_tokens Integer Anzahl der vom Benutzer eingegebenen Token
abschluss_tokens Integer Anzahl der vom Modell ausgegebenen Token
gesamt_tokens Integer Token insgesamt
inhalt_filter Liste Zurück zu Informationen über die Sicherheit von Inhalten
Rolle Zeichenfolge Verbindungen zum Inkrafttreten der Sicherheit, einschließlichrole = assistant Modellierung der Argumentation.role = user Benutzereingabe.role = history historischer Zusammenhang
Ebene Integer Schweregrad 0-3, wobei der Schweregrad 0 der schwerste und 3 der am wenigsten schwere ist.

Beispiel für einen Antrag

from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 请填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4v-plus",  # 填写需要调用的模型名称
messages=[
{
"role": "user", 
"content": [
{
"type": "image_url",
"image_url": {
"url" : "sfile.chatglm.cn/testpath/xxxx.jpg"
}
},
{
"type": "text",
"text": "图里有什么"
}
]
},
],
stream=True,
)
for chunk in response:
print(chunk.choices[0].delta)

Beispielhafte Antwort

data: {"id":"8305986882425703351","created":1705476637,"model":"glm-4v-plus","choices":[{"index":0,"delta":{"role":"assistant","content":"下"}}]}
data: {"id":"8305986882425703351","created":1705476637,"model":"glm-4v-plus","choices":[{"index":0,"delta":{"role":"assistant","content":"角"}}]}
data: {"id":"8305986882425703351","created":1705476637,"model":"glm-4v-plus","choices":[{"index":0,"delta":{"role":"assistant","content":"有一个"}}]}
... ...
data: {"id":"8305986882425703351","created":1705476637,"model":"glm-4v-plus","choices":[{"index":0,"delta":{"role":"assistant","content":"树木"}}]}
data: {"id":"8305986882425703351","created":1705476637,"model":"glm-4v-plus","choices":[{"index":0,"delta":{"role":"assistant","content":"。"}}]}
data: {"id":"8305986882425703351","created":1705476637,"model":"glm-4v-plus","choices":[{"index":0,"finish_reason":"stop","delta":{"role":"assistant","content":""}}],"usage":{"prompt_tokens":1037,"completion_tokens":37,"total_tokens":1074}}
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " Smart Spectrum veröffentlicht ein kostenloses Vision-Modell GLM-4V-Flash Gleichzeitigkeitsgrenze auf 10 erhöht, dieses Mal genug für Produktionsumgebungen
de_DEDeutsch