Nexevo.aiNexevo.ai

Pengurusan sumber

Sejarah perbualan

Modul pilihan untuk kegigihan bahagian belakang UI sembang. Setiap perbualan ialah bekas dengan tajuk/metadata. Mesej tambahan tidak mencetuskan LLM tetapi hanya berterusan (digunakan dengan pelengkapan sembang). CRUD penuh + mesej ditambahkan.

python
conv = client.conversations.create(title="My Session")
client.conversations.append_message(
    conv["conversation_id"], role="user", content="Hello!",
)
all_convs = client.conversations.list(limit=20)
detail = client.conversations.get(conv["conversation_id"])
POST /conversations
titlestringOptional对话标题。可后续 update。
metadataobjectOptional任意 JSON,关联你自己的 user_id / session_id / topic 等。最大 4KB。
POST /conversations/{id}/messages
role"user" | "assistant" | "system" | "tool"Required消息角色。
contentstringRequired消息文本。注意:此 endpoint 只持久化,不触发 LLM。

Pengurusan akaun

Pendaftaran/Log Masuk/Tetapan Semula Kata Laluan/2FA/Pengeditan Profil/Penyahaktifan Layan Diri GDPR. Kebanyakan titik akhir adalah untuk aliran aplikasi web; penyepaduan bahagian belakang hanyalah saya() / tukar-kata laluan / 2FA. Semua titik akhir yang dilindungi menggunakan token Pembawa.

python
me = client.auth.me()
client.auth.update_profile(full_name="Jane Doe")
client.auth.change_password(
    current_password="old-pwd",
    new_password="new-pwd-123",
)
status = client.auth.two_fa_status()

Pengurusan kunci API

Buat/batalkan kunci API secara dinamik dan boleh menetapkan had penggunaan bulanan (monthly_spend_cap_usd), webhook penggera lebih ambang (HTTPS sahaja) dan dasar penghalaan geografi (cn-sahaja / luar negara sahaja / mana-mana). create() mengembalikan full_key sekali sahaja, pastikan anda menyimpannya.

full_key dipaparkan sekali sahaja
Kekunci_penuh yang dikembalikan oleh create() ialah sk-xc-... rentetan lengkap, yang tidak akan dipaparkan oleh Nexevo lagi (hanya cincangan disimpan). Pastikan anda menyimpan ke pengurus kunci atau fail .env serta-merta apabila dibuat. Jika hilang, ia hanya boleh dibatalkan dan dibina semula.
python
new = client.keys.create(name="prod-2026")
print(new["full_key"])  # 只此一次显示

client.keys.update_spend_cap(
    new["key"]["key_id"],
    monthly_spend_cap_usd="100",
)

client.keys.update_alert_webhook(
    new["key"]["key_id"],
    url="https://your-app.com/billing-alert",
)
POST /keys
namestringRequiredKey 显示名(用于在 dashboard 区分)。1-100 字符。
PATCH /keys/{id}/spend-cap
monthly_spend_cap_usdstringOptional月度上限 USD,字符串保留精度(如 "100.00")。超 cap 后该 key 该月所有请求被拒。
clearbooleanDefault: falsetrue = 清除当前 cap(无限额)。

Bil/Penggunaan/Caj semula

Baki, penggunaan harian, pecahan mengikut tier (by_tier: fast / balanced / passthrough / byok), tambah nilai Stripe. Tier penagihan ditentukan oleh medan model permintaan — model=nexevo/fast → kadar flat fast; ID model sebenar → passthrough +5%. Anggap semua rentetan wang sebagai decimal — jangan hurai sebagai float.

Gunakan rentetan untuk jumlah, jangan gunakan parseFloat
Semua jumlah (baki_usd / kos / jumlah_usd) dikembalikan sebagai rentetan, mengekalkan ketepatan asal (perpuluhan). ParseFloat langsung mungkin kehilangan mantissa, jadi gunakan perpustakaan Decimal/BigNumber sebaliknya untuk penambahan dan penolakan.
python
bal   = client.billing.balance()
usage = client.billing.usage(days=7)
plan  = client.billing.get_plan()

hint = client.billing.upgrade_hint()
if hint["hint"]:
    print(f"建议: {hint['hint']['recommend_plan']}, "
          f"可省 {hint['hint']['savings_pct']}%")

session = client.billing.checkout(
    amount_usd=20,
    idempotency_key="topup-2026-04-27-001",
)
print(session["checkout_url"])
POST /billing/topup · POST /billing/checkout
amount_usdnumberRequired充值金额 USD,> 0。
idempotency_keystringRequired幂等 key,同 key 重试不会重复扣款。建议格式:topup-YYYY-MM-DD-序号。

Organisasi/Berbilang Pengguna

Pengurusan akaun perniagaan berbilang pengguna. Menyokong tiga peranan: pemilik/pentadbir/pembangun, jemputan ahli/penyingkiran/pindah milik. Semua kunci + pengebilan dikongsi di bawah nama organisasi, sesuai untuk akses pasukan syarikat.

python
org = client.organizations.create("Acme Inc")

client.organizations.invite_member(
    org["organization"]["org_id"],
    email="dev@acme.com",
    role="developer",
)

members = client.organizations.list_members(org["organization"]["org_id"])

client.organizations.transfer_owner(
    org["organization"]["org_id"],
    new_owner_user_id="u_789",
)

Maklum Balas RLHF

Dapatkan generation_id daripada pengepala respons sembang X-Nexevo-Generation-Id, serahkan ibu jari ke atas/bawah + ulasan pilihan + teg. Maklum balas pergi terus ke roda tenaga data, dan penghalaan pembelajaran kendiri akan menggunakannya untuk mengoptimumkan pemilihan model masa hadapan.

python
resp = client.chat.completions.create(
    model="nexevo/balanced",
    messages=[{"role": "user", "content": "Hello!"}],
)
gen_id = resp["nexevo"]["generation_id"]

client.feedback.submit(
    generation_id=gen_id,
    rating=1,
    comment="Helpful!",
    tags=["accurate"],
)

summary = client.feedback.summary(days=7)
POST /feedback
generation_idstringRequired从 chat 响应头 X-Nexevo-Generation-Id 或 SDK resp.nexevo.generation_id 拿。
rating1 | -1Required1 = 👍, -1 = 👎。
commentstringOptional可选自由文本(最多 ~2K 字符)。
tagsstring[]Optional可选标签。常用: accurate / incorrect / too_verbose / irrelevant
Maklum balas pergi terus kepada penghalaan pembelajaran kendiri
Ibu jari ke atas/bawah yang diserahkan bukan sekadar statistik — penghala pembelajaran kendiri (penyamun + ELO) akan menggunakannya untuk melaraskan model pemilihan masa hadapan dalam masa nyata. Lebih banyak maklum balas = peningkatan automatik dalam kualiti produk.

Langkah seterusnya

Pengurusan sumber — Nexevo Docs | Nexevo.ai