z-ai/glm4:latest131,072 令牌上下文
代币交换
z-ai/glm4:9b一款强大的多语言通用语言模型,性能与Llama 3相当。
从模型到应用程序
在 ShareAI 控制台中创建一个密钥,然后将其保存为服务器上的环境变量。
创建 API 密钥export SHAREAI_API_KEY="your-api-key"使用您的 API 密钥在 Authorization 标头中发送 POST 请求。
https://api.shareai.now/api/v1/chat/completions此标签的端点尚未确认。请在发送请求之前检查 API 参考文档和您的控制台。.
示例使用您选择的标签并显示其请求格式。在您的服务器上运行它们以保护您的 API 密钥隐私。当您发送请求时,会检查模型可用性和账户访问权限。.
curl --fail-with-body --request POST 'https://api.shareai.now/api/v1/chat/completions' \
--header "Authorization: Bearer ${SHAREAI_API_KEY}" \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "z-ai/glm4:9b",
"messages": [
{
"role": "user",
"content": "Hello!"
}
],
"stream": false
}'import json
import os
import urllib.request
payload = {
"model": "z-ai/glm4:9b",
"messages": [
{
"role": "user",
"content": "Hello!",
},
],
"stream": False,
}
request = urllib.request.Request("https://api.shareai.now/api/v1/chat/completions",
data=json.dumps(payload).encode(),
headers={
"Authorization": f"Bearer {os.environ['SHAREAI_API_KEY']}",
"Content-Type": "application/json",
},
method="POST",
)
with urllib.request.urlopen(request, timeout=180) as response:
print(json.dumps(json.load(response), indent=2))package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
"os"
"time"
)
func main() {
if err := run(); err != nil {
fmt.Fprintln(os.Stderr, err)
os.Exit(1)
}
}
func run() error {
key := os.Getenv("SHAREAI_API_KEY")
if key == "" { return fmt.Errorf("set SHAREAI_API_KEY") }
body := []byte(`{
"model": "z-ai/glm4:9b",
"messages": [
{
"role": "user",
"content": "Hello!"
}
],
"stream": false
}`)
request, err := http.NewRequest(http.MethodPost, "https://api.shareai.now/api/v1/chat/completions", bytes.NewReader(body))
if err != nil { return err }
request.Header.Set("Authorization", "Bearer " + key)
request.Header.Set("Content-Type", "application/json")
client := &http.Client{Timeout: 180 * time.Second}
response, err := client.Do(request)
if err != nil { return err }
defer response.Body.Close()
if response.StatusCode < 200 || response.StatusCode >= 300 {
detail, _ := io.ReadAll(io.LimitReader(response.Body, 1<<20))
return fmt.Errorf("ShareAI HTTP %d: %s", response.StatusCode, detail)
}
var result any
if err := json.NewDecoder(response.Body).Decode(&result); err != nil { return err }
encoder := json.NewEncoder(os.Stdout)
encoder.SetIndent("", " ")
return encoder.Encode(result)
}保存为 main.go 并运行 go run main.go。此示例使用 Go 标准库。.
在您的 Cargo 项目中添加这些依赖项。将示例保存为 src/main.rs,然后运行 cargo run。.
cargo add [email protected] --no-default-features --features blocking,json,rustls-tls
cargo add serde_json@1fn main() -> Result<(), Box<dyn std::error::Error>> {
let api_key = std::env::var("SHAREAI_API_KEY")?;
let payload: serde_json::Value = serde_json::from_str(r#"{
"model": "z-ai/glm4:9b",
"messages": [
{
"role": "user",
"content": "Hello!"
}
],
"stream": false
}"#)?;
let client = reqwest::blocking::Client::builder()
.timeout(std::time::Duration::from_secs(180))
.build()?;
let response = client.post(r#"https://api.shareai.now/api/v1/chat/completions"#)
.bearer_auth(api_key)
.json(&payload)
.send()?
.error_for_status()?;
let result: serde_json::Value = response.json()?;
println!("{}", serde_json::to_string_pretty(&result)?);
Ok(())
}const payload = {
"model": "z-ai/glm4:9b",
"messages": [
{
"role": "user",
"content": "Hello!"
}
],
"stream": false
};
const response = await fetch("https://api.shareai.now/api/v1/chat/completions", {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.SHAREAI_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify(payload),
});
if (!response.ok) throw new Error(await response.text());
console.log(JSON.stringify(await response.json(), null, 2));使用网络时消耗您的令牌余额。您的账户消费设置决定请求的计费方式。
更多细节
一款强大的多语言通用语言模型,性能与Llama 3相当。
此标签可通过 Token Exchange 获取。您的代币余额和账户消费设置决定了访问权限和计费。请检查您的控制台以了解余额和资格。
输入:文本。输出:文本。这些功能适用于所选模型标签。请查看端点文档以了解支持的请求格式。
此标签的上下文窗口为131,072个标记。上下文大小和定价阈值是独立的。特定部署的请求限制可能更低。
在 ShareAI 控制台中创建一个 API 密钥,选择一个模型标签,并向快速入门中的端点发送经过身份验证的请求。您的密钥必须具有所选模型的访问权限。请将您的密钥保存在服务器上。