{- |
#Ollama-Haskell#
This library lets you run LlMs from within Haskell projects. Inspired by `ollama-python`.
-}
module Ollama
( -- * Main APIs
-- ** Generate Texts
generate
, defaultGenerateOps
, GenerateOps (..)
, GenerateResponse (..)
-- ** Chat with LLMs
, chat
, Role (..)
, defaultChatOps
, ChatResponse (..)
, ChatOps (..)
-- ** Embeddings
, embedding
, embeddingOps
-- * Ollama operations
-- ** Copy Models
, copyModel
-- ** Create Models
, createModel
, createModelOps
-- ** Delete Models
, deleteModel
-- ** List Models
, list
-- ** List currently running models
, ps
-- ** Push and Pull
, push
, pushOps
, pull
, pullOps
-- ** Show Model Info
, showModel
, showModelOps
-- * Types
, ShowModelResponse (..)
, Models (..)
, ModelInfo (..)
, RunningModels (..)
, RunningModel (..)
, Message (..)
)
where
import Data.Ollama.Chat
( ChatOps (..)
, ChatResponse (..)
, Message (..)
, Role (..)
, chat
, defaultChatOps
)
import Data.Ollama.Copy (copyModel)
import Data.Ollama.Create (createModel, createModelOps)
import Data.Ollama.Delete (deleteModel)
import Data.Ollama.Embeddings (embedding, embeddingOps)
import Data.Ollama.Generate
( GenerateOps (..)
, GenerateResponse (..)
, defaultGenerateOps
, generate
)
import Data.Ollama.List (ModelInfo (..), Models (..), list)
import Data.Ollama.Ps (RunningModel (..), RunningModels (..), ps)
import Data.Ollama.Pull (pull, pullOps)
import Data.Ollama.Push (push, pushOps)
import Data.Ollama.Show (ShowModelResponse (..), showModel, showModelOps)