Skip to main content

Django Langchain

Project description

Django Langchain

What's this ?

This package aims to provide integration between LangChain and Django.

This is very early and the current stage is : alpha

Compatibility

LangChain is moving at a fast pace and interfaces may change. Version pinning is not enforced at the time to be able to use latest releases.

This package is built using

  • LangChain v0.0.229
  • Django 4.2
  • Python 3.9

Database requirements

You have to use a pgvector-enabled Postgresql database

Roadmap

Never ending todo :

  • Base document models (chunks and sources)
  • A LangChain-compliant document store
  • Embeddings are computed via SourceDocument.parse_file
  • Bare-bone admin management interface
  • Serializers (output) to use with Django REST Framework
  • Comprehensive set of utilities binding LLM & chains
  • (TBC)Serializers (input) to use with Django REST Framework
  • (TBC) Add support for celery or other async queuing system
  • (TBC) Add support for data visualization in django admin

Quickstart

Using the admin site

  1. Store a file in SourceDocument model
  2. Perform the admin action Parse and index file

  1. Check for DocumentChunk instances

  1. Perform a similarity search using Django's admin built-in search (returns 5 most relevant results)

Using the console

from django_langchain.models import SourceDocument

source_doc = SourceDocument(title='< Title >', file='< /path/to/file/ >')
source_doc.save()

#: This could take some time and some non-trivial amount of RAM
source_doc.parse_file()
print(source_doc.documentchunk_set.count())
from django_langchain.models import DocumentChunk, DocumentChunkStore

# Perform a similarity search
queryset = DocumentChunk.objects.search('< query >', max_results=5)

# Or using DocumentStore Langchain interface

store = DocumentChunkStore()
source, doc = store.search("< query >")

print(doc.metadata)
print(doc.page_content)

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

django-langchain-0.0.1.tar.gz (234.4 kB view details)

Uploaded Source

Built Distribution

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

django_langchain-0.0.1-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file django-langchain-0.0.1.tar.gz.

File metadata

  • Download URL: django-langchain-0.0.1.tar.gz
  • Upload date:
  • Size: 234.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for django-langchain-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c6ea3aa79a87adcceb77c4db38b78b642c9d899d3b5e4abcd170770278054e4c
MD5 10808b23a4c4636fe8cff8bda5d04eec
BLAKE2b-256 3e46437238539fcc35bb594e1ecc0d428ca21c5388c6dcd1f9e55fcba0abc8bd

See more details on using hashes here.

File details

Details for the file django_langchain-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for django_langchain-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e22aa92f1900a7fcf6f16a910cb8fe955718c3a79bc7e13127f2db8c390f185c
MD5 dbc8db5ce26e98180c9567bed9e2f826
BLAKE2b-256 cc7b07b1be792631fcff0012af4b8261a9161fb0690ddd5caca91838576b223a

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