Mikä on Ollama API?

Ollama on avoimen lähdekoodin työkalu suurten kielimallien (LLM) ajamiseen paikallisesti omalla koneellasi. Se tarjoaa REST API:n, joka vastaanottaa HTTP-pyyntöjä, mahdollistaen vuorovaikutuksen mallien kuten Llama 3, Mistral, Gemma ja monien muiden kanssa suoraan terminaalista tai sovelluskoodista. API noudattaa yksinkertaista JSON-pohjaista pyyntö/vastaus-mallia ja tukee tekstin generointia, monivuoroisia chat-keskusteluja sekä tekstiupotuksia.

cURL on yleisin tapa testata ja käyttää Ollama API:a. Oikean cURL-komennon muodostaminen kaikkine parametreineen, otsakkeineen ja JSON-rungon muotoiluineen voi kuitenkin olla työlästä ja virhealtista, erityisesti kun säädetään mallin asetuksia kuten lämpötilaa ja top-k-näytteistystä.

Työkalun kuvaus

Tämä työkalu luo valmiita cURL-komentoja Ollama API:n endpointeille. Valitse endpoint, määritä mallisi ja parametrit, ja saat oikein muotoillun cURL-komennon välittömästi. Generoitu komento sisältää kaikki tarvittavat otsakkeet, JSON-runkorakenteen ja malliasetukset — valmis liitettäväksi terminaaliin.

Esimerkit

Perustekstin generointi:

curl -X POST "http://localhost:11434/api/generate" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "llama3",
  "prompt": "Explain quantum computing in simple terms",
  "stream": true
}'

Chat järjestelmäkehotteella ja mukautetulla lämpötilalla:

curl -X POST "http://localhost:11434/api/chat" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "llama3",
  "messages": [
    { "role": "system", "content": "You are a helpful coding assistant." },
    { "role": "user", "content": "Write a Python function to reverse a string" }
  ],
  "stream": false,
  "options": {
    "temperature": 0.3
  }
}'

Upotuksien generointi:

curl -X POST "http://localhost:11434/api/embeddings" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "llama3",
  "prompt": "The quick brown fox jumps over the lazy dog",
  "stream": false
}'

Ominaisuudet

  • Tukee kaikkia kolmea Ollaman pääendpointia: /api/generate, /api/chat ja /api/embeddings
  • Määritettävät malliasetukset: lämpötila, top-p, top-k, enimmäistokenimäärä, toistosanktio ja seed
  • Järjestelmäkehotetuuki generate- ja chat-endpointeille
  • JSON-vastausmuotovaihtoehto jäsenneltyä tulostetta varten
  • Lataa generoitu komento .sh-tiedostona

Asetukset selitettyinä

Asetus Kuvaus Oletus Alue
Lämpötila Ohjaa tulosteen satunnaisuutta. Matalammat arvot tuottavat tarkempaa tekstiä, korkeammat arvot lisäävät luovuutta. 0.7 0–2
Top P Ydinpoiminnan kynnysarvo. Malli ottaa huomioon tokenit, joiden kumulatiivinen todennäköisyys saavuttaa tämän arvon. 0.9 0–1
Top K Rajoittaa tokenivalinnan K todennäköisimpään ehdokkaaseen kullakin askeleella. 40 1–100
Enimmäistokenit Vastauksen generoitavien tokenien enimmäismäärä. Aseta arvoksi -1 rajoittamatonta varten. 128 -1–4096
Toistosanktio Rankaisee toistuvia tokeneita. Yli 1.0 olevat arvot ehkäisevät toistoa. 1.1 0–2
Seed Kiinteä seed toistettavaa tulostetta varten. Jätä tyhjäksi satunnaisia tuloksia varten. Mikä tahansa kokonaisluku
Vastausmuoto Aseta JSON-muotoon pakottaaksesi mallin palauttamaan kelvollista JSON-tulostetta. Ei mitään Ei mitään / JSON
Stream Kun käytössä, vastaus lähetetään token kerrallaan. Poista käytöstä vastaanottaaksesi koko vastaus kerralla. Päällä Päällä / Pois

Käyttötapaukset

  • Ollama API -kutsujen nopea prototyypitys ja testaus terminaalista ilman manuaalista JSON-kirjoittamista
  • cURL-komentojen generointi tiimitovereiden kanssa jakamista tai dokumentaatioon sisällyttämistä varten
  • Erilaisten malliparametrien kokeilu optimaalisten asetusten löytämiseksi omaan käyttötapaukseen