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.8.tar.gz (105.8 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.8-py3-none-any.whl (26.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for minimalllm-1.1.8.tar.gz
Algorithm Hash digest
SHA256 a3fa60883c0cb25216f88b01566dc805e1337adb0a2b7af54c76792d7771496d
MD5 226ecc9e480316a2f8b7ab6b88df3abb
BLAKE2b-256 eae0e6229c15f57adc5243765822581d5e6b3d7356c2add0a133536b8dd442de

See more details on using hashes here.

File details

Details for the file minimalllm-1.1.8-py3-none-any.whl.

File metadata

  • Download URL: minimalllm-1.1.8-py3-none-any.whl
  • Upload date:
  • Size: 26.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.16

File hashes

Hashes for minimalllm-1.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 439e44f8539b5fa8baf60c7ceb2651857bc093e0adbb6425c9f635c1b45cc5df
MD5 1e683072a20040c1ee9ea776d13f99b6
BLAKE2b-256 e867a16748b82b434b77edb8a3d56824d0ad0e35e16b4f308a7160a0484f6ead

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