Qwen2 7B Instruct
Qwen2-7B-Instruct je besedilni model, prilagojen navodilom, za večjezični dialog, programiranje, matematiko in sklepanje. Njegov proizvajalec dokumentira kontekst do 131.072 žetonov, kadar je omogočena konfiguracija za dolg kontekst.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsqwen2-7b-instruct - Ailoot Ultra · Anthropic Messages
POST /v1/messagesqwen2-7b-instruct
O modelu
Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.
Qwen2-7B-Instruct je izdaja Qwen2 velikosti 7B, prilagojena navodilom, za pogovor in naloge, izražene v naravnem jeziku. Gre za model z besedilnim vhodom in izhodom: odgovor je lahko razlaga, prevod, osnutek dokumenta ali programska koda. Proizvajalec kot glavna področja uporabe navaja razumevanje jezika, generiranje, večjezično delo, programiranje, matematiko in sklepanje.
Podrobnosti modela
Qwen2 vključuje ločene osnovne izdaje in izdaje, prilagojene navodilom. Ta kartica se nanaša na izdajo Instruct, ne na osnovni model Qwen2-7B ali izdajo družine z mešanico strokovnjakov. Proizvajalčeva tabela informacij o modelu navaja 7,07 milijarde parametrov za model velikosti 7B. Njegov dekodirni Transformer uporablja SwiGLU, pristranskost QKV pri pozornosti in pozornost z združenimi poizvedbami, s tokenizatorjem, zasnovanim za naravne jezike in kodo. To so izbire arhitekture in predstavitve, ne dodatne vhodne modalnosti.
Najava izdaje opisuje učenje v angleščini in kitajščini ter 27 dodatnih jezikih. Ti vključujejo ruščino, češčino in poljščino; nemščino, francoščino in španščino; arabščino, perzijščino in turščino; japonščino in korejščino; ter druge jezike južne in jugovzhodne Azije. Večjezični pomočnik lahko zato prejme navodilo in izvorno gradivo v različnih jezikih, vendar je še vedno priporočljivo določiti jezik, terminologijo in občinstvo končnega izdelka.
Učenje in razlika izdaje Instruct
Po predhodnem učenju proizvajalec uporabi nadzorovano prilagajanje in neposredno optimizacijo preferenc. Izdaja, prilagojena navodilom, je namenjena odzivanju na zahtevo v pogovoru, osnovna izdaja pa ima drugačno vlogo kot osnova jezikovnega modela. Pri izbiri modela ali primerjavi odzivanja na pozive jasno navedite ime izdaje. Učenje modela za sledenje navodilom in podajanje natančnega navodila pri uporabi sta dopolnjujoča se dela tega poteka dela.
Priprava pogovornega vhoda
Hitri začetek na kartici modela loči sistemsko navodilo od uporabnikovega vprašanja in pred generiranjem uporabi ustrezno pogovorno predlogo. Pri nalogi na ravni aplikacije je koristno isto praktično razlikovanje: vlogo pomočnika in pravila odgovora določite ločeno od izvornega odlomka ali kode, s katero mora delati. Besedilna oznaka, zapisana znotraj dokumenta, ne nadomesti pravilno oblikovanih pogovornih vlog v okoliškem vmesniku.
Naloga za tehnično razlago lahko vsebuje funkcijo in en primer vhoda ter zahteva pojasnilo, kaj počne vsaka veja in kateri pogoji vplivajo na rezultat. Programerska naloga lahko določi sprejeti vhod, pričakovano vrnjeno vrednost in omejitve pri spreminjanju obstoječega vedenja. Zahtevajte implementacijo, ki ji sledijo primeri za običajen in robni primer. To so uporabe dokumentiranih jezikovnih in programerskih zmožnosti; generiranje kode je besedilni rezultat, njeno izvajanje pa sodi v aplikacijsko okolje.
Pri večjezičnem urejanju podajte prvotni odlomek, ciljno občinstvo in kratek seznam terminologije. Zahtevajte popravljeno besedilo, ki ohrani prvotna imena in pogoje, nato pa kratko razlago sprememb. To je natančneje od zahteve po izboljšanju besedila: določa, kateri pomen se mora ohraniti in kakšen uporaben izhod mora model vrniti.
Obdelava dolgih besedil
Proizvajalec dokumentira podporo kontekstu do 131.072 žetonov, vendar so navodila za dolg kontekst pomembna. Vhodi, daljši od 32.768 žetonov, zahtevajo dokumentirano konfiguracijo razširitve YaRN. Objavljeni primer uporablja faktor skaliranja 4,0 s prvotno nastavitvijo položajev 32.768. Proizvajalec navaja, da statična nastavitev razširitve lahko vpliva na vedenje pri krajših besedilih, in priporoča njeno omogočanje, ko je obdelava dolgega konteksta dejansko potrebna.
Nalogo z dolgim dokumentom pripravite z usmerjenim vprašanjem, poimenovanimi izvornimi razdelki in jasno izhodno strukturo. Podajte na primer več delov tehnične specifikacije in zahtevajte zahteve, pomembne za določeno spremembo, pri čemer naj bo ob vsaki ugotovitvi ohranjen izvorni razdelek. Veliko vhodno okno je uporabno za skupno ohranjanje teh delov; odgovor je lahko še vedno strnjena tabela, ne ponovna pripoved celotnega dokumenta.
Pomembne meje
Število 131.072 žetonov pomeni podporo razširjenemu kontekstu, ne dovoljenja za zanemarjanje konfiguracije dolgega konteksta. 512 generiranih žetonov v primeru hitrega začetka je zgolj nastavitev primera, ne objavljena največja izhodna zmogljivost. Ta izdaja Instruct je besedilni model in ne sme prevzeti slikovnih ali video zmožnosti iz Qwen-VL oziroma specializiranega matematičnega učenja z integriranimi orodji iz Qwen2.5-Math. Izberite poimenovano izdajo in pripravite besedilo za konkretno razlago, kodo ali dokument, ki ga potrebujete.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions qwen2-7b-instruct
qwen2-7b-instructZačetek
Qwen2-7B-Instruct je besedilni model, prilagojen navodilom, za večjezični dialog, programiranje, matematiko in sklepanje. Njegov proizvajalec dokumentira kontekst do 131.072 žetonov, kadar je omogočena konfiguracija za dolg kontekst.
- Dovoljeni vhodi
- Besedilo
- Rezultati
- Besedilo
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Vhod
text- Izhod
text- Izhodni format
- json ali SSE
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve qwen2-7b-instruct | Privzeto— |
Poljemessages | Vrstamessage[] | ZahtevaObvezno | Vrednosti in omejitve Najmanjše število elementov: 1 | Privzeto— |
Poljemessages[].role | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljemessages[].content | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Velja, ko: Besedilni pogovor | Privzeto— |
Poljestream | Vrstaboolean | ZahtevaIzbirno | Vrednosti in omejitve | Privzetofalse |
Kombinacije vhodnih gradiv
Besedilo · Besedilo UTF8
messages[].content
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijamodel, messages |
Parametermaterial_types | Specifikacijatext |
Parametermessages | Specifikacijapolje sporočil s strukturo role/content |
Parameterfile_material | Specifikacijadejanski dokument UTF-8 je vstavljen kot dobesedno besedilo; ID datoteke se ne izpeljuje |
Parameteroptional_controls | Specifikacijastream |
Parametercontrol_scope | SpecifikacijaBesedilni pogovor; stream je logična vrednost in je privzeto false. |
Parameteroutput_modalities | Specifikacijatext |
Parameterhosted_operations | Specifikacijafalse |
Parametermultimodal_input_binding | Specifikacijanull |
Druga imena metode: /chat/completions
Življenjski cikel: synchronous_or_streamed
Pošljite natančen ID modela skupaj z messages.
Dolžina konteksta ni zgornja meja izhoda.
Besedilna datoteka lahko poda dobesedno besedilo; slikovni, zvočni vhodi in vhodi z datotečnimi objekti potrebujejo natančno vezavo.
Cenik
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Ni navedeno Ko je izbran hitri način
- Način flex
- Ni navedeno Ko je izbran način flex
- Najvišja raven razmišljanja
- Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Cene Ailoot
Cene po nastavitvah
| Nastavitev | Cenovna lestvica | Strošek |
|---|---|---|
| NastavitevOsnovne cene za žetone | Cenovna lestvicaOsnovna cena | Strošek Vhod · Vhodni žetoni $0.000286 / 1K žetonov Izhod · Izhodni žetoni $0.00058 / 1K žetonov Vhod · Branje predpomnilnika $0 / 1K žetonov Vhod · Zapis v predpomnilnik $0 / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"qwen2-7b-instruct","messages":[{"role":"user","content":"hello"}],"stream":false}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="qwen2-7b-instruct", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
Prejmi in shrani rezultate
Ailoot Ultra · OpenAI Chat
json ali SSE
Ohrani vse dokončane rezultate
Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.
Ohranite vsako možnost odgovora ter njeno vsebino, klice orodij in sklepanje. V SSE sestavite delne spremembe po indeksu možnosti/orodja ter ohranite končni razlog zaključka in podatke o porabi.
Če je treba preveriti izvirni odgovor
Ohranite ID zahtev/odgovorov in glave. Splošni URL za pridobivanje besedilne naloge ni podan.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljechoices[].index | Vrstainteger |
Poljechoices[].message.content | Vrstastring|null |
Poljechoices[].message.tool_calls | Vrstatool_call[] |
Poljechoices[].message.reasoning_content | Vrstastring |
Poljechoices[].message.reasoning_details | Vrstaobject|array |
Poljechoices[].finish_reason | Vrstastring|null |
Poljeusage | Vrstaobject |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametra | Naslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja. |
Druga imena
Druga imena modelov
Ailoot Ultra qwen2-7b-instruct
Druga imena poti metod
/chat/completions
Povezani ID-ji za klic
Ailoot Ultra · Anthropic Messages POST /v1/messages qwen2-7b-instruct
qwen2-7b-instructZačetek
Qwen2-7B-Instruct je besedilni model, prilagojen navodilom, za večjezični dialog, programiranje, matematiko in sklepanje. Njegov proizvajalec dokumentira kontekst do 131.072 žetonov, kadar je omogočena konfiguracija za dolg kontekst.
- Dovoljeni vhodi
- Besedilo
- Rezultati
- json · sse
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Vhod
text- Izhod
json,sse- Izhodni format
- JSON ali SSE
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve qwen2-7b-instruct | Privzeto— |
Poljemessages | Vrstamessage[] | ZahtevaObvezno | Vrednosti in omejitve | Privzeto— |
Poljemessages[].role | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve user, assistant | Privzeto— |
Poljemessages[].content | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve | Privzeto— |
Poljemax_tokens | Vrstainteger | ZahtevaObvezno | Vrednosti in omejitve | Privzeto— |
Poljestream | Vrstaboolean | ZahtevaIzbirno | Vrednosti in omejitve | Privzetofalse |
Kombinacije vhodnih gradiv
Besedilo · Besedilo UTF-8
niz messages[].content
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijamodel, messages, max_tokens |
Parameteroptional_controls | Specifikacijastream |
Parametermaterial_types | Specifikacijatext |
Parametertext_file_material | SpecifikacijaPreberite dejanski dokument UTF-8 in njegovo besedilo vstavite v navedeni vhodni niz ali niz vsebine sporočila. |
Življenjski cikel: synchronous_or_streamed
Cenik
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Ni navedeno Ko je izbran hitri način
- Način flex
- Ni navedeno Ko je izbran način flex
- Najvišja raven razmišljanja
- Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Cene Ailoot
Cene po nastavitvah
| Nastavitev | Cenovna lestvica | Strošek |
|---|---|---|
| NastavitevOsnovne cene za žetone | Cenovna lestvicaOsnovna cena | Strošek Vhod · Vhodni žetoni $0.000286 / 1K žetonov Izhod · Izhodni žetoni $0.00058 / 1K žetonov Vhod · Branje predpomnilnika $0 / 1K žetonov Vhod · Zapis v predpomnilnik $0 / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Anthropic Messages
{
"model": "qwen2-7b-instruct",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'qwen2-7b-instruct', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'qwen2-7b-instruct', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError
api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
with urlopen(request, timeout=120) as response:
raw = response.read()
Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
Path('result.json').write_bytes(error.read())
Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
Prejmi in shrani rezultate
Ailoot Ultra · Anthropic Messages
JSON ali SSE
Ohrani vse dokončane rezultate
Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.
Ohranite vse vsebinske bloke, podpise sklepanja in dejanske ID uporabe orodij. Sestavite vse delne spremembe blokov SSE; prvi besedilni blok ni celoten izhod.
Če je treba preveriti izvirni odgovor
Ohranite ID zahtev/odgovorov in glave. Splošni URL za pridobivanje besedilne naloge ni podan.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljeid | Vrstastring |
Poljemodel | Vrstastring |
Poljecontent[] | Vrstatext|thinking|tool_use|other content block |
Poljestop_reason | Vrstastring|null |
Poljeusage | Vrstaobject |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametra | Naslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja. |
Druga imena
Druga imena modelov
Ailoot Ultra qwen2-7b-instruct
Druga imena poti metod
/chat/completions
Povezani ID-ji za klic
FAQ · Pro/Qwen/Qwen2-7B-Instruct
- Kateri vhodi in rezultati so na voljo?
POST /v1/chat/completions·qwen2-7b-instruct:text→textPOST /v1/messages·qwen2-7b-instruct:text→json,sse- Katera polja uporablja zahteva?
POST /v1/chat/completions·qwen2-7b-instruct:model,messages,streamPOST /v1/messages·qwen2-7b-instruct:model,messages,max_tokens,stream- Katere omejitve veljajo?
POST /v1/chat/completions·qwen2-7b-instruct:messages.min_items:1