Meta: Llama 3.1 70B Instruct
Llama 3.1 70B Instruct to tekstowy model Meta do wielojęzycznego dialogu, rozumowania nad dokumentami i kodu. Jego wydanie 70B dostrojone do instrukcji używa uwagi grouped-query, kontekstu producenta 128k i udokumentowanych formatów rozmowy z wywołaniami narzędzi, z tekstem i kodem na wyjściu.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsmeta-llama/llama-3.1-70b-instruct - Ailoot Ultra · Anthropic Messages
POST /v1/messagesmeta-llama/llama-3.1-70b-instruct
O modelu
Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.
Llama 3.1 70B Instruct to tekstowy model Meta o 70 miliardach parametrów, zoptymalizowany do wielojęzycznego dialogu i próśb w stylu asystenta. Jest punktem kontrolnym dostrojonym do instrukcji w rodzinie, która obejmuje również rozmiary 8B i 405B oraz osobne modele po treningu wstępnym. Przyjmuje tekst i zwraca wielojęzyczny tekst lub kod; nazwana edycja 70B zachowuje własny rozmiar i tożsamość.
Informacje o modelu i trening
Wydanie używa autoregresyjnej architektury Transformer z uwagą grouped-query. Dostrojone modele są dopasowywane przy użyciu nadzorowanego dostrajania i uczenia ze wzmocnieniem na podstawie informacji zwrotnej od ludzi. Są to etapy treningu wspierające pomocne zachowanie konwersacyjne, a nie nazwany przełącznik wykonawczy między osobnymi trybami z rozumowaniem i bez rozumowania.
Producent dokumentuje kontekst 128k dla modeli tekstowych i oficjalnie obsługuje angielski, niemiecki, francuski, włoski, portugalski, hindi, hiszpański i tajski. Trening obejmuje szerszy zbiór języków, co nie czyni wszystkich języków równie obsługiwanymi. Określ język wyjściowy, terminologię i czytelnika przed poproszeniem o rezultat wielojęzyczny.
Korpus treningu wstępnego rodziny jest opisany jako około piętnaście bilionów tokenów, z granicą w grudniu 2023 r. Dostrajanie obejmuje zbiory instrukcyjne i ponad dwadzieścia pięć milionów przykładów syntetycznych. Granica dotyczy danych treningowych; pytanie zależne od nowszych lub prywatnych informacji wymaga dostarczenia ich w zadaniu lub zwrócenia przez podłączone źródło.
Czat w stylu asystenta i analiza źródeł
Edycja Instruct ma odpowiadać na prośby konwersacyjne, podczas gdy wersja po treningu wstępnym jest fundamentem, który można dostosować do innych zadań generowania. Przy odpowiedzi opartej na źródłach dostarcz pytanie i fragmenty rozstrzygające o wyniku. Oznacz źródła i poproś o potwierdzającą sekcję lub stwierdzenie obok każdego ustalenia.
Praktyczne porównanie może dostarczać dwie procedury i wymagać wspólnych warunków, różnic i nierozstrzygniętych konfliktów. Wynikowy przewodnik może zachowywać oryginalną kolejność i warunki stosowania każdego działania. Zadanie redakcji dokumentu może określać odbiorców, fakty, które muszą pozostać, oraz to, czy końcowy rezultat ma być samym poprawionym fragmentem, czy fragmentem z wyjaśnieniem.
Przy dłuższej odpowiedzi nazwij wymagane sekcje i cel każdej z nich. Duży kontekst może utrzymywać razem powiązany materiał, podczas gdy wynik końcowy pozostaje zwięzłą macierzą lub wyjaśnieniem. Tożsamość źródeł i dobrze określone pytanie mają większe znaczenie niż samo dołączenie wszystkich dostępnych dokumentów.
Kod i wygenerowane przykłady
Udokumentowane wyjście obejmuje kod. Przy proponowanej implementacji dostarcz język, typy wejścia, oczekiwany wynik i interfejs, który musi pozostać zgodny. Gdy zadanie jest korektą, dołącz istniejący fragment i odpowiednie deklaracje. Poproś o kod oddzielnie od założeń i przykładów, aby następny etap rozwoju mógł go sprawdzić.
Przy wyjaśnieniu kodu dostarcz wejście do prześledzenia i zapytaj, jak podana funkcja osiąga zwracaną wartość. Przy wyjaśnieniu matematycznym zdefiniuj symbole i założenia oraz określ, czy wynik ma być dokładny, przybliżony czy stanowić dowód. Generowanie kodu i pisemne rozumowanie same nie kompilują programu ani nie wykonują obliczenia.
Producent wskazuje też generowanie danych syntetycznych i destylację jako zastosowania rodziny. Zadanie tekstowe może wymagać różnorodnych przykładów w podanym formacie z zachowaniem dostarczonych zasad. Przydatność tych przykładów do dalszego treningu jest osobną decyzją aplikacji; samo wyjście tekstowe nie stanowi niezależnej weryfikacji ich poprawności.
Format rozmowy i narzędzia
Karta pokazuje osobne wiadomości systemowe i użytkownika z odpowiednim szablonem czatu. Używaj instrukcji systemowej do określenia roli, tonu i trwałych zasad odpowiedzi, natomiast żądanie użytkownika powinno zawierać rzeczywisty problem i źródła. Zachowuj istotne wcześniejsze wiadomości przy kolejnym zapytaniu rozwijającym wcześniejszą odpowiedź.
Llama 3.1 obsługuje wiele udokumentowanych formatów użycia narzędzi. Aplikacja dostarcza funkcje i parametry, model przygotowuje proponowane wywołanie, aplikacja je wykonuje i dołącza wynik do rozmowy. Kolejne generowanie może wykorzystać ten wynik. Krótki przykład karty wyraźnie pokazuje dodanie wywołania asystenta, a następnie wyniku narzędzia; wybranie funkcji jest odrębne od ukończenia jej operacji.
Przy wyszukiwaniu określ wymaganą informację i zdefiniuj funkcję, która ją zwraca. Zachowaj rzeczywiście zwróconą wartość przy wywołaniu źródłowym przed poproszeniem o końcowe wyjaśnienie. Przy obliczeniu odróżniaj proponowaną operację modelu od wyniku zwróconego przez kalkulator. Natywne formatowanie narzędzi i widoczna reprezentacja interfejsu opakowującego powinny zachowywać własne udokumentowane konwencje.
Edycja i ograniczenia praktyczne
Ustawienie generowania 256 tokenów w przeczytanej karcie jest przykładem użycia, a nie niezależnie określoną maksymalną pojemnością wyjścia. Kontekst 128k dotyczy materiału i wygenerowanej rozmowy w skonfigurowanym wydaniu. Nie zastępuj go kontekstem lub możliwościami wizualnymi Llama 4 ani rozmiarem innego punktu kontrolnego Llama 3.1.
Jest to model Instruct wyłącznie tekstowy. Obraz, nagranie lub wideo wymaga przygotowania istotnej treści przez inny komponent. Wyszukiwanie zewnętrzne, wykonywanie programów i zmiany plików również należą do aplikacji podłączonej do asystenta. Zachowaj dokładną edycję 70B Instruct i poproś o powiązane ze źródłami wyjaśnienie, poprawiony dokument, kod lub ustrukturyzowany tekst potrzebny w zadaniu.
Zadanie praktyczne
Zadanie praktyczne
Przykład techniczny po angielsku
Produce a bilingual maintenance notice
Write a maintenance notice in English and Spanish from these facts: warehouse entrance B closes on Tuesday from 08:00 to 11:00; deliveries must use entrance A; pedestrian access is unchanged. Use three short sentences per language and preserve entrance letters and times. Do not add a date, delay estimate or closure of pedestrian access.Oczekiwany wynik
Two labelled language blocks with equivalent three-sentence notices.Sprawdź wynik
Compare both versions for entrance A/B, Tuesday, the time range and unchanged pedestrian access.Ailoot Ultra · OpenAI Chat POST /v1/chat/completions meta-llama/llama-3.1-70b-instruct
meta-llama/llama-3.1-70b-instruct
meta-llama/llama-3.1-70b-instructStart
Llama 3.1 70B Instruct to tekstowy model Meta do wielojęzycznego dialogu, rozumowania nad dokumentami i kodu. Jego wydanie 70B dostrojone do instrukcji używa uwagi grouped-query, kontekstu producenta 128k i udokumentowanych formatów rozmowy z wywołaniami narzędzi, z tekstem i kodem na wyjściu.
- Akceptowane dane wejściowe
- Tekst
- Wyniki
- Tekst
Dostępne w Ailoot · dane wejściowe i metody
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Wejście
text- Wyjście
text- Format wyjściowy
- json lub SSE
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity meta-llama/llama-3.1-70b-instruct | Domyślnie— |
Polemessages | Typmessage[] | WymaganieWymagane | Wartości i limity Minimalna liczba elementów: 1 | Domyślnie— |
Polemessages[].role | Typstring | WymaganieWymagane | Wartości i limity Przykłady: system, user, assistant, tool, function Warunki: Te role są jawnie reprezentowane przez typy zgodności w kodzie źródłowym; dokładny zestaw ról pozostaje właściwy dla danego modelu. Zależy od modelu | Domyślnie— |
Polemessages[].content | Typstring|content_part[]|null | WymaganieOpcjonalne | Wartości i limity | Domyślnie— |
Polemessages[].tool_calls | Typtool_call[] | WymaganieOpcjonalne | Wartości i limity | Domyślnie— |
Polemessages[].tool_call_id | Typstring | WymaganieOpcjonalne | Wartości i limity Obowiązuje, gdy: role=tool; użyj rzeczywiście zwróconego ID | Domyślnie— |
Polemessages[].name | Typstring | WymaganieOpcjonalne | Wartości i limity | Domyślnie— |
Polemessages[].reasoning_content | Typstring | WymaganieOpcjonalne | Wartości i limity Obowiązuje, gdy: Przekazuj z powrotem rzeczywiście zwróconą treść rozumowania, gdy ten model jej używa | Domyślnie— |
Polemessages[].reasoning_details | Typobject|array | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Polemax_tokens | Typinteger | WymaganieOpcjonalne | Wartości i limity Minimum: 1 Zależy od modelu | Domyślnie— |
Polemax_completion_tokens | Typinteger | WymaganieOpcjonalne | Wartości i limity Minimum: 1 Zależy od modelu | Domyślnie— |
Polestream | Typboolean | WymaganieOpcjonalne | Wartości i limity | Domyślniefalse |
Polestream_options.include_usage | Typboolean | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poletemperature | Typnumber | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poletop_p | Typnumber | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Polestop | Typstring|string[] | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poletools | Typfunction_tool[] | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poletools[].type | Typstring | WymaganieOpcjonalne | Wartości i limity function Zależy od modelu | Domyślnie— |
Poletools[].function.name | Typstring | WymaganieWymagane | Wartości i limity Obowiązuje, gdy: udostępnione narzędzie funkcji | Domyślnie— |
Poletools[].function.description | Typstring | WymaganieOpcjonalne | Wartości i limity | Domyślnie— |
Poletools[].function.parameters | TypJSON_schema | WymaganieOpcjonalne | Wartości i limity | Domyślnie— |
Poletool_choice | Typstring|object | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poleparallel_tool_calls | Typboolean | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poleresponse_format | Typobject | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Polereasoning_effort | Typstring | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Polereasoning | Typobject | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poleservice_tier | Typstring | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poleinstructions | Typstring | WymaganieOpcjonalne | Wartości i limity Pole zgodności | Domyślnie— |
Polefunctions | Typfunction[] | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Polefunction_call | Typstring|object | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Poleprompt_cache_options | Typobject | WymaganieOpcjonalne | Wartości i limity Zależy od modelu | Domyślnie— |
Polemodalities | Typstring[] | WymaganieOpcjonalne | Wartości i limity text | Domyślnie— |
Poleprovider | Typobject | WymaganieOpcjonalne | Wartości i limity Warunki: provider.options jest odrzucane na tej tekstowej trasie Ultra | Domyślnie— |
Polecache_control.ttl | Typstring | WymaganieOpcjonalne | Wartości i limity Warunki: 1h jest odrzucane w rzeczywistych miejscach pamięci podręcznej promptów | Domyślnie— |
Kombinacje materiałów wejściowych
Tekst · tekst UTF8
messages[].content
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, messages |
Parametrmaterial_types | Kontrakttext |
Parametrmessages | Kontrakttablica wiadomości o strukturze role/content |
Parametrfile_material | Kontraktrzeczywisty dokument UTF-8 wstawiony jako dosłowny tekst; bez wywnioskowanego ID pliku |
Parametroptional_controls | Kontraktstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice |
Parametrcontrol_scope | Kontraktwłaściwe dla modelu; narzędzia funkcji użytkownika różnią się od narzędzi hostowanych |
Parametroutput_modalities | Kontrakttext |
Parametrhosted_operations | Kontraktfalse |
Parametrmultimodal_input_binding | Kontraktnull |
Cykl życia: synchronous_or_streamed
Wyślij dokładne ID modelu wraz z messages.
Długość kontekstu nie jest limitem wyjścia.
Plik tekstowy może dostarczyć dosłowny tekst; wejścia obrazowe/dźwiękowe/obiekty plików wymagają dokładnego powiązania.
Cennik
Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.
- Tryb szybki
- Stawka standardowa Gdy wybrany jest tryb szybki
- Tryb flex
- Stawka standardowa Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Stawka standardowa Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Stawki Ailoot
Ceny według konfiguracji
Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.
| Konfiguracja | Tabela stawek | Tokeny kontekstu, więcej niż | Tokeny kontekstu, do podanej wartości włącznie | Opłata |
|---|---|---|---|---|
| KonfiguracjaPodstawowe stawki za tokeny | Tabela stawekStawka podstawowa | Tokeny kontekstu, więcej niż— | Tokeny kontekstu, do podanej wartości włącznieBez górnej granicy | Opłata Wejście · Tokeny wejściowe $0.00144 / 1K tokenów Wyjście · Tokeny wyjściowe $0.00144 / 1K tokenów Wejście · Odczyt cache — / 1K tokenów Wejście · Zapis do cache — / 1K tokenów Wejście · Zapis do cache, 1 godz. — / 1K tokenów |
| KonfiguracjaPrzedział długości żądania 1 | Tabela stawek— | Tokeny kontekstu, więcej niż0 | Tokeny kontekstu, do podanej wartości włącznieBez górnej granicy | Opłata Wejście · Tokeny wejściowe $0.00144 / 1K tokenów Wyjście · Tokeny wyjściowe $0.00144 / 1K tokenów Wejście · Odczyt cache — / 1K tokenów Wejście · Zapis do cache — / 1K tokenów Wejście · Zapis do cache, 1 godz. — / 1K tokenów |
Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →
Przykładowe żądania
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": "meta-llama/llama-3.1-70b-instruct", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')
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='meta-llama/llama-3.1-70b-instruct',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
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"))
from openai import OpenAI
import os
from pathlib import Path
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)
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))
with client.chat.completions.stream(model='meta-llama/llama-3.1-70b-instruct',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
for event in stream:
payload=event.to_dict(mode="json")
log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
print(json.dumps(payload,ensure_ascii=False))
final=stream.get_final_completion()
save_result(final.to_dict(mode="json"),"stream-result")
Odbieranie i zapisywanie wyników
Ailoot Ultra · OpenAI Chat
json lub SSE
Zachowaj wszystkie ukończone wyniki
Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.
Zachowaj każdy wariant i jego treść/wywołania narzędzi/rozumowanie. W SSE składaj przyrosty według indeksu wariantu/narzędzia, zachowując końcowy powód zakończenia i dane użycia.
Jeśli trzeba sprawdzić pierwotną odpowiedź
Zachowaj ID i nagłówki żądań/odpowiedzi. Nie udostępniono ogólnego URL pobierania zadania tekstowego.
Pola odpowiedzi
| Pole | Typ |
|---|---|
Polechoices[].index | Typinteger |
Polechoices[].message.content | Typstring|null |
Polechoices[].message.tool_calls | Typtool_call[] |
Polechoices[].message.reasoning_content | Typstring |
Polechoices[].message.reasoning_details | Typobject|array |
Polechoices[].finish_reason | Typstring|null |
Poleusage | Typobject |
Błędy i dalsze kroki
| Odpowiedź | Warunek | Następny krok |
|---|---|---|
Odpowiedź400 · invalid_request_error | WarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametru | Następny krokPopraw wskazane pola przed nowym żądaniem utworzenia. |
Aliasy
Aliasy modelu
Ailoot Ultra meta-llama/llama-3.1-70b-instruct
Aliasy ścieżek metod
Użyj ścieżek metod podanych powyżej.
Powiązane ID modeli
Ailoot Ultra · Anthropic Messages POST /v1/messages meta-llama/llama-3.1-70b-instruct
meta-llama/llama-3.1-70b-instruct
meta-llama/llama-3.1-70b-instructStart
Llama 3.1 70B Instruct to tekstowy model Meta do wielojęzycznego dialogu, rozumowania nad dokumentami i kodu. Jego wydanie 70B dostrojone do instrukcji używa uwagi grouped-query, kontekstu producenta 128k i udokumentowanych formatów rozmowy z wywołaniami narzędzi, z tekstem i kodem na wyjściu.
- Akceptowane dane wejściowe
- Tekst
- Wyniki
- json · sse
Dostępne w Ailoot · dane wejściowe i metody
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Wejście
text- Wyjście
json,sse- Format wyjściowy
- JSON lub SSE
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity meta-llama/llama-3.1-70b-instruct | Domyślnie— |
Polemessages | Typmessage[] | WymaganieWymagane | Wartości i limity | Domyślnie— |
Polemessages[].role | Typstring | WymaganieWymagane | Wartości i limity user, assistant | Domyślnie— |
Polemessages[].content | Typstring | WymaganieWymagane | Wartości i limity | Domyślnie— |
Polemax_tokens | Typinteger | WymaganieWymagane | Wartości i limity | Domyślnie— |
Polestream | Typboolean | WymaganieOpcjonalne | Wartości i limity | Domyślniefalse |
Kombinacje materiałów wejściowych
Tekst · tekst UTF-8
ciąg messages[].content
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, messages, max_tokens |
Parametroptional_controls | Kontraktstream |
Parametrmaterial_types | Kontrakttext |
Parametrtext_file_material | KontraktOdczytaj rzeczywisty dokument UTF-8 i umieść jego tekst we wskazanym polu input lub w ciągu treści wiadomości. |
Cykl życia: synchronous_or_streamed
Cennik
Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.
- Tryb szybki
- Stawka standardowa Gdy wybrany jest tryb szybki
- Tryb flex
- Stawka standardowa Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Stawka standardowa Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Stawki Ailoot
Ceny według konfiguracji
Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.
| Konfiguracja | Tabela stawek | Tokeny kontekstu, więcej niż | Tokeny kontekstu, do podanej wartości włącznie | Opłata |
|---|---|---|---|---|
| KonfiguracjaPodstawowe stawki za tokeny | Tabela stawekStawka podstawowa | Tokeny kontekstu, więcej niż— | Tokeny kontekstu, do podanej wartości włącznieBez górnej granicy | Opłata Wejście · Tokeny wejściowe $0.00144 / 1K tokenów Wyjście · Tokeny wyjściowe $0.00144 / 1K tokenów Wejście · Odczyt cache — / 1K tokenów Wejście · Zapis do cache — / 1K tokenów Wejście · Zapis do cache, 1 godz. — / 1K tokenów |
| KonfiguracjaPrzedział długości żądania 1 | Tabela stawek— | Tokeny kontekstu, więcej niż0 | Tokeny kontekstu, do podanej wartości włącznieBez górnej granicy | Opłata Wejście · Tokeny wejściowe $0.00144 / 1K tokenów Wyjście · Tokeny wyjściowe $0.00144 / 1K tokenów Wejście · Odczyt cache — / 1K tokenów Wejście · Zapis do cache — / 1K tokenów Wejście · Zapis do cache, 1 godz. — / 1K tokenów |
Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →
Przykładowe żądania
Ailoot Ultra · Anthropic Messages
{
"model": "meta-llama/llama-3.1-70b-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': 'meta-llama/llama-3.1-70b-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': 'meta-llama/llama-3.1-70b-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))
Odbieranie i zapisywanie wyników
Ailoot Ultra · Anthropic Messages
JSON lub SSE
Zachowaj wszystkie ukończone wyniki
Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.
Zachowaj wszystkie bloki treści, sygnatury myślenia i rzeczywiste ID użycia narzędzi. Złóż wszystkie przyrosty bloków SSE; pierwszy blok tekstowy nie jest pełnym wyjściem.
Jeśli trzeba sprawdzić pierwotną odpowiedź
Zachowaj ID i nagłówki żądań/odpowiedzi. Nie udostępniono ogólnego URL pobierania zadania tekstowego.
Pola odpowiedzi
| Pole | Typ |
|---|---|
Poleid | Typstring |
Polemodel | Typstring |
Polecontent[] | Typtext|thinking|tool_use|other content block |
Polestop_reason | Typstring|null |
Poleusage | Typobject |
Błędy i dalsze kroki
| Odpowiedź | Warunek | Następny krok |
|---|---|---|
Odpowiedź400 · invalid_request_error | WarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametru | Następny krokPopraw wskazane pola przed nowym żądaniem utworzenia. |
Aliasy
Aliasy modelu
Ailoot Ultra meta-llama/llama-3.1-70b-instruct
Aliasy ścieżek metod
Użyj ścieżek metod podanych powyżej.
Powiązane ID modeli
FAQ · Meta: Llama 3.1 70B Instruct
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/chat/completions·meta-llama/llama-3.1-70b-instruct:text→textPOST /v1/messages·meta-llama/llama-3.1-70b-instruct:text→json,sse- Jakich pól używa żądanie?
POST /v1/chat/completions·meta-llama/llama-3.1-70b-instruct:model,messages,stream,modalities,providerPOST /v1/messages·meta-llama/llama-3.1-70b-instruct:model,messages,max_tokens,stream- Jakie limity obowiązują?
POST /v1/chat/completions·meta-llama/llama-3.1-70b-instruct:messages.min_items:1