a101fe51a7
Signed-off-by: Matt Williams <m@technovangelist.com>
3.4 KiB
3.4 KiB
API
Generate a Prompt
POST /api/generate
Generate is the main endpoint that you will use when working with Ollama. This is used to generate a response to a prompt sent to a model.
The Generate endpoint takes a JSON object with the following fields:
{
Model: "modelname",
Prompt: "prompt",
}
The response is a stream of JSON objects with the following fields:
{
"model": "modelname",
"created_at": "2023-08-04T08:52:19.385406455-07:00"
"response": "the current token",
"done": false
}
The final response in the stream also includes the context and what is usually seen in the output from verbose mode. For example:
{
"model":"orca",
"created_at":"2023-08-04T19:22:45.499127Z",
"done":true,
"total_duration":5589157167,
"load_duration":3013701500,
"sample_count":114,
"sample_duration":81442000,
"prompt_eval_count":46,
"prompt_eval_duration":1160282000,
"eval_count":113,
"eval_duration":1325948000
}
field | description |
---|---|
model | the name of the model |
created_at | the time the response was generated |
response | the current token |
done | whether the response is complete |
total_duration | total time spent generating the response |
load_duration | time spent loading the model |
sample_count | number of samples generated |
sample_duration | time spent generating samples |
prompt_eval_count | number of times the prompt was evaluated |
prompt_eval_duration | time spent evaluating the prompt |
eval_count | number of times the response was evaluated |
eval_duration | time spent evaluating the response |
Example Request
curl --location --request POST 'http://localhost:11434/api/generate' \
--header 'Content-Type: text/plain' \
--data-raw '{
"model": "orca",
"prompt": "why is the sky blue"
}'
Example Response
{"model":"orca","created_at":"2023-08-04T19:22:44.085127Z","response":" The","done":false}
{"model":"orca","created_at":"2023-08-04T19:22:44.176425Z","response":" sky","done":false}
{"model":"orca","created_at":"2023-08-04T19:22:44.18883Z","response":" appears","done":false}
{"model":"orca","created_at":"2023-08-04T19:22:44.200852Z","response":" blue","done":false}
{"model":"orca","created_at":"2023-08-04T19:22:44.213644Z","response":" because","done":false}
{"model":"orca","created_at":"2023-08-04T19:22:44.225706Z","response":" of","done":false}
{"model":"orca","created_at":"2023-08-04T19:22:44.237686Z","response":" a","done":false}
.
.
.
{"model":"orca","created_at":"2023-08-04T19:22:45.487113Z","response":".","done":false}
{"model":"orca","created_at":"2023-08-04T19:22:45.499127Z","done":true,"total_duration":5589157167,"load_duration":3013701500,"sample_count":114,"sample_duration":81442000,"prompt_eval_count":46,"prompt_eval_duration":1160282000,"eval_count":113,"eval_duration":1325948000}
Create a Model
POST /api/create
List Local Models
GET /api/tags
Return Object
{
"models": [
{
"name": "modelname:tags",
"modified_at": "2023-08-04T08:52:19.385406455-07:00",
"size": size
}
]
}
Copy a Model
/api/copy
Delete a Model
/api/delete
Pull a Model
/api/pull
Push a Model
/api/push
Heartbeat
/