Skip to main content

Minimal toolkit for LLM

Project description

MinimalLLM

pip install MinimalLLM

Minimal and handy interfaces of LLMs based on LiteLLM.

Features:

  • Minimal and intuitive interfaces. You don't need to learn
  • Handy cache system for faster testing
  • Support for multiple LLMs by LiteLLM

Usage

Chat

from mllm import Chat
chat = Chat()
chat += "Give me a random number from 1 to 10"
res = chat.complete(cache=True)
print(res)
chat = Chat()
chat += "Give a json dict with keys 'a' and 'b' and values 1 and 2"
res = chat.complete(parse="dict", cache=True)
print(res)

Embedding

from mllm import get_embeddings
embeddings = get_embeddings(["Hello, world!", "Goodbye, world!"])
print(embeddings)
# Embeddings are automatically cached

Visualized Log of chats

from mllm import Chat, display_chats
with display_chats():
    chat = Chat()
    chat += "Who is your developer?"
    res = chat.complete(cache=True)
    # A web page will be opened to show the chat log

Providers

MinimalLLM is based on LiteLLM, which supports multiple providers. You can switch the provider to use different LLMs.

Switch provider

from mllm.provider_switch import set_default_to_anthropic
set_default_to_anthropic()

To setup the API keys for the providers, we recommend to use the following wizard:

from mllm.setup.wizard import setup_wizard
setup_wizard()

You can run in the command line:

python -m mllm.setup.wizard

Installation

pip install -U git+https://github.com/EvoEvolver/MinimalLLM

To add it to your requirements.txt:

MinimalLLM @ git+https://github.com/EvoEvolver/MinimalLLM

Why minimal?

Minimal means stable. We only provide the most basic interfaces and features.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

minimalllm-1.1.7.tar.gz (105.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

MinimalLLM-1.1.7-py3-none-any.whl (26.4 kB view details)

Uploaded Python 3

File details

Details for the file minimalllm-1.1.7.tar.gz.

File metadata

  • Download URL: minimalllm-1.1.7.tar.gz
  • Upload date:
  • Size: 105.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.15

File hashes

Hashes for minimalllm-1.1.7.tar.gz
Algorithm Hash digest
SHA256 fcfaa7370a554924237c819133ec923fd9a21cadfd25471509d8e4f3829a51ed
MD5 ecb60d12495c51d3de5c80abe7593398
BLAKE2b-256 cb10f19b28a57e9ab739bf7d49d9ff3962628323780b7c92c6bdf482f307ace4

See more details on using hashes here.

File details

Details for the file MinimalLLM-1.1.7-py3-none-any.whl.

File metadata

  • Download URL: MinimalLLM-1.1.7-py3-none-any.whl
  • Upload date:
  • Size: 26.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.15

File hashes

Hashes for MinimalLLM-1.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 f3b13543ee7d081db611ac4755feaa30aa4a5873586fd89e4ce9b438671bd733
MD5 60dc772d43128135476bb6fb4c3cb5b3
BLAKE2b-256 5258cfaea64a5881be3d468c8d237d678654583cb0c25340ef0f32f433b425f0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page