AI-Ollama-Client

 view release on metacpan or  search on metacpan

README.mkdn  view on Meta::CPAN


Delete a model and its data.

## `generateEmbedding`

    my $res = $client->generateEmbedding()->get;

Generate embeddings from a model.

Returns a [AI::Ollama::GenerateEmbeddingResponse](https://metacpan.org/pod/AI%3A%3AOllama%3A%3AGenerateEmbeddingResponse).

## `generateCompletion`

    use Future::Utils 'repeat';
    my $responses = $client->generateCompletion();
    repeat {
        my ($res) = $responses->shift;
        if( $res ) {
            my $str = $res->get;
            say $str;
        }

        Future::Mojo->done( defined $res );
    } until => sub($done) { $done->get };

Generate a response for a given prompt with a provided model.

Returns a [AI::Ollama::GenerateCompletionResponse](https://metacpan.org/pod/AI%3A%3AOllama%3A%3AGenerateCompletionResponse).

## `pullModel`

    my $res = $client->pullModel(
        name => 'llama',
    )->get;

Download a model from the ollama library.

Returns a [AI::Ollama::PullModelResponse](https://metacpan.org/pod/AI%3A%3AOllama%3A%3APullModelResponse).

## `pushModel`

    my $res = $client->pushModel()->get;

Upload a model to a model library.

Returns a [AI::Ollama::PushModelResponse](https://metacpan.org/pod/AI%3A%3AOllama%3A%3APushModelResponse).

## `showModelInfo`

    my $info = $client->showModelInfo()->get;
    say $info->modelfile;

Show details about a model including modelfile, template, parameters, license, and system prompt.

Returns a [AI::Ollama::ModelInfo](https://metacpan.org/pod/AI%3A%3AOllama%3A%3AModelInfo).

## `listModels`

    my $info = $client->listModels()->get;
    for my $model ($info->models->@*) {
        say $model->model; # llama2:latest
    }

List models that are available locally.

Returns a [AI::Ollama::ModelsResponse](https://metacpan.org/pod/AI%3A%3AOllama%3A%3AModelsResponse).



( run in 0.811 second using v1.01-cache-2.11-cpan-7fcb06a456a )