Model

class loopgpt.models.base.BaseModel

Base class for all models.

class loopgpt.models.openai_.OpenAIModel(model: str = 'gpt-3.5-turbo', api_key: str | None = None)
class loopgpt.models.azure_openai.AzureOpenAIModel(model: str, api_key: str | None = None, api_version: str | None = None, azure_endpoint: str | None = None)

Creates an Azure OpenAI model from a deployment ID. Can be created only when openai.api_type is set to azure.

Parameters:
  • deployment_id (str) – The deployment ID of the model.

  • api_key (str, optional) – The API key to use for the model. If not specified, it will be found from openai.api_key or .env file or the OPENAI_API_KEY environment variable.

Raises:

AssertionError – If openai.api_type is not set to azure.

Note

You will also need an embedding provider deployed (e.g., text-embedding-ada-002) for creating an agent.

Example:

import os
import openai
import loopgpt
from loopgpt.models import AzureOpenAIModel
from loopgpt.embeddings import AzureOpenAIEmbeddingProvider

openai.api_type = "azure"
openai.api_base = "https://<your deployment>.openai.azure.com/"
openai.api_version = "2023-03-15-preview"
openai.api_key = os.getenv("OPENAI_API_KEY")

model = AzureOpenAIModel("my-gpt4-deployment")
embedding_provider = AzureOpenAIEmbeddingProvider("my-embeddings-deployment")

agent = loopgpt.Agent(model=model, embedding_provider=embedding_provider)
agent.chat("Hello, how are you?")
class loopgpt.models.llama_cpp.LlamaCppModel(model: str | None, prompt_style: str = 'alpaca')
class loopgpt.models.stable_lm.StableLMModel(model='stabilityai/stablelm-tuned-alpha-7b', load_in_8bit=False, model_max_length=1024)