chatrelay
Chatbot library for Groq and Gemini. Give it multiple API keys; when one hits its rate limit it automatically switches to the next.
Install
pip install chatrelay
Setup
Set environment variables (comma-separated keys):
export GROQ_API_KEYS="groq_key_1,groq_key_2"
export GEMINI_API_KEYS="gemini_key_1,gemini_key_2"
Use in code
from chatrelay import Chatbot, build_providers
bot = Chatbot(build_providers(), system_prompt="You are a helpful assistant.")
result = bot.ask("What is Python?")
print(result["provider"], result["reply"]) # e.g. groq-1 ...
bot.ask("Explain more") # remembers the conversation
bot.ask("Hi", provider="gemini") # prefer a provider ("gemini") or one key ("groq-2")
bot.reset() # clear history
Terminal chat
pip install "chatrelay[cli]"
chatrelay
How failover works
Order: groq-1 -> groq-2 -> gemini-1 -> gemini-2. A key that returns HTTP 429 is skipped
for 60s (or the Retry-After time). If all keys fail, LLMError is raised.
REST API example
See examples/fastapi_app.py (pip install "chatrelay[api]").
Metadata
Release files for chatrelay 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| chatrelay-0.1.0.tar.gz | 6.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| chatrelay-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.7 kB
Release files / chatrelay-0.1.0.tar.gz
| Download URL | chatrelay-0.1.0.tar.gz |
|---|---|
| Size | 6.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f01b66362c0d3a6239d94234f1f8e33560e284fbf2aa59585b48775cb65ea59a
|
|
BLAKE2b-256 checksum How to use checksums |
d66a235f4b8be3eb5d1f149ca1d3abae55a9c99154c81990529e500b50164551
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.10
|
Release files / chatrelay-0.1.0-py3-none-any.whl
| Download URL | chatrelay-0.1.0-py3-none-any.whl |
|---|---|
| Size | 7.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1c5f12fc250c979b178b571b0e7f6cad808fb97acb7c495c1f88c637df458bf4
|
|
BLAKE2b-256 checksum How to use checksums |
40d89d1c3823b52c73ae7c998d998f777b607fd814ad2eb70c3d79c312f9301d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.10
|