Skip to main content

LLAMPHouse OpenAI Assistant Server

Project description

[!NOTE]
This package is still under development. Always use the latest version for better stability.

Introduction

When building production grade LLM apps, there are many frameworks available to work something out in Python code. However, how can we deploy this code? When looking for tutorials, most people suggest using FastAPI to deploy a server with an endpoint. But in this step, scaling can become an issue. That is where LLAMPHouse comes in.

stack

This packages creates a reliable self-hosted server that mimics the OpenAI Assistant behavior. However, you can fully customize the run behavior yourself using your favorite framework.

assistant API

Installation

Local

  1. Clone the repository
  2. Install the library pip install .

Build

This is only required if you want to push the package to PyPi.

  1. python setup.py sdist bdist_wheel
  2. git tag -a v1.0.0 -m "Release version 1.0.0"
  3. git push

Testing

  1. Build/Install the latest solution locally
  2. Run the test: pytest

Database

To run a local database:

  1. docker run --rm -d --name postgres -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=password -p 5432:5432 postgres
  2. docker exec -it postgres psql -U postgres -c 'CREATE DATABASE llamphouse;'

To create a new database revision: alembic revision --autogenerate -m "Added account table"

To upgrade the database with the latest revision: alembic upgrade head

To downgrade back to the base version: alembic downgrade base

Included API endpoints

  • Assistants
    • Create -> created in code
    • List
    • Retrieve
    • Modify -> only in code
    • Delete -> only in code
  • Threads
    • Create
    • Retrieve
    • Modify
    • Delete
  • Messages
    • Create
    • List
    • Retrieve
    • Modify
    • Delete
  • Runs
    • Create
    • Create thread and run
    • List
    • Retrieve
    • Modify
    • Submit tool outputs
    • Cancel
  • Run steps
    • List
    • Retrieve
  • Vector stores
    • Create -> depends on implementation
    • List
    • Retrieve
    • Modify
    • Delete -> depends on implementation
  • Vector store files
    • Create
    • List
    • Retrieve
    • Delete
  • Vector store file batches
    • Create
    • Retrieve
    • Cancel
    • List
  • Streaming
    • Message delta
    • Run step object
    • Assistant stream

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

llamphouse-0.0.6.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

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

llamphouse-0.0.6-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

Details for the file llamphouse-0.0.6.tar.gz.

File metadata

  • Download URL: llamphouse-0.0.6.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for llamphouse-0.0.6.tar.gz
Algorithm Hash digest
SHA256 aff7f0b52b56fa0625a07e2388f3e8af5d6035da740779539a04e87e7b24ab71
MD5 b8d2efe21514d479cfffa04207a7fd61
BLAKE2b-256 55792b2b7143a0f26736934c5835bd556d1d1b1a7ca7a12b77ba65611e69b8db

See more details on using hashes here.

File details

Details for the file llamphouse-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: llamphouse-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 29.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for llamphouse-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 69affeb3c99da08cc928e0473a29ac585bf675f1d5bcb4283413c9b065324dc5
MD5 0462c95b6f8f119bbf5a0fe718c3cf47
BLAKE2b-256 17a9d36d4640d0fab5d76331a9b065ac745a62b78383fd2b047ed5440683ac10

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