Skip to main content

Produciton Ready LangChain

Project description

LongTrainer - Production-Ready LangChain

Features 🌟

  • Long Memory: Retains context effectively for extended interactions.
  • Unique Bots/Chat Management: Sophisticated management of multiple chatbots.
  • Enhanced Customization: Tailor the behavior to fit specific needs.
  • Memory Management: Efficient handling of chat histories and contexts.
  • GPT Vision Support: Integration Context Aware GPT-powered visual models.
  • Different Data Formats: Supports various data input formats.
  • VectorStore Management: Advanced management of vector storage for efficient retrieval.

Works for All Langchain Supported LLM and Embeddings

  • ✅ OpenAI (default)
  • ✅ VertexAI
  • ✅ HuggingFace

Example

VertexAI LLMs

from longtrainer.trainer import LongTrainer
from langchain_community.llms import VertexAI

llm = VertexAI()

trainer = LongTrainer(mongo_endpoint='mongodb://localhost:27017/', llm=llm)

TogetherAI LLMs

from longtrainer.trainer import LongTrainer
from langchain_community.llms import Together

llm = Together(
    model="togethercomputer/RedPajama-INCITE-7B-Base",
    temperature=0.7,
    max_tokens=128,
    top_k=1,
    # together_api_key="..."
)

trainer = LongTrainer(mongo_endpoint='mongodb://localhost:27017/', llm=llm)

Usage Example 🚀

pip install longtrainer

Here's a quick start guide on how to use LongTrainer:

from longtrainer.trainer import LongTrainer
import os
        
# Set your OpenAI API key
os.environ["OPENAI_API_KEY"] = "sk-"
        
# Initialize LongTrainer
trainer = LongTrainer(mongo_endpoint='mongodb://localhost:27017/', encrypt_chats=True)
bot_id = trainer.initialize_bot_id()
print('Bot ID: ', bot_id)
        
# Add Data
path = 'path/to/your/data'
trainer.add_document_from_path(path, bot_id)
        
# Initialize Bot
trainer.create_bot(bot_id)
        
# Start a New Chat
chat_id = trainer.new_chat(bot_id)
        
# Send a Query and Get a Response
query = 'Your query here'
response = trainer._get_response(query, bot_id, chat_id)
print('Response: ', response)

Here's a guide on how to use Vision Chat:

chat_id = trainer.new_vision_chat(bot_id)

query = 'Your query here'
image_paths=['nvidia.jpg']
response = trainer._get_vision_response(query, image_paths, str(bot_id),str(vision_id))
print('Response: ', response)

List Chats and Display Chat History:

trainer.list_chats(bot_id)

trainer.get_chat_by_id(chat_id=chat_id)

This project is still under active development. Community feedback and contributions are highly appreciated.

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

longtrainer-0.1.9.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

longtrainer-0.1.9-py3-none-any.whl (18.0 kB view details)

Uploaded Python 3

File details

Details for the file longtrainer-0.1.9.tar.gz.

File metadata

  • Download URL: longtrainer-0.1.9.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for longtrainer-0.1.9.tar.gz
Algorithm Hash digest
SHA256 78234651bce0339cb71c1421a4a906d2981b39336eb96a0cdde77debc937ee82
MD5 44781ae3bc6b09c3fb738b7850c6a09c
BLAKE2b-256 246e5aa3afda604ed11709d0870a320625616a448aa7512845165e7d891094e2

See more details on using hashes here.

File details

Details for the file longtrainer-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: longtrainer-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 18.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for longtrainer-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 bbb5bfcd6b700f3274014aa8bf162e8c9d1a3f32a97c4cc0d98935dbd378e69a
MD5 f3b43c66833b84a851dd1072435188c8
BLAKE2b-256 e9d490e08795fe1a1753fe32f1d50857515b18f23b2ee30d227e1595dfac618e

See more details on using hashes here.

Supported by

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