Skip to main content

A FastAPI-based web server for working with LLMs, embedding models, and PostgresSQL.

Project description

TextWeaver

TextWeaver is a FastAPI-based web server designed for working with Large Language Models (LLMs), particularly Embeddings models. It simplifies the process of handling complex natural language processing tasks and offers a robust and scalable solution for both developers and researchers to store and query against embeddings in Pinecone.

Features

  • FastAPI Integration: Leverage the power of FastAPI for creating modern and efficient web APIs.
  • LLM and Embedding Support: Easily work with LLMs and various embedding models for rich textual analysis.
  • Scalable Architecture: Designed to grow with your needs, TextWeaver can be deployed across various environments.
  • User-Friendly Configuration: Get started quickly with intuitive configuration options.

Installation

To install TextWeaver, you need to have a .env file in the root directory of your project. This file should contain the following variables:

HOST_IP=""
PORT=""
AWS_ACCESS_KEY_ID=""
AWS_SECRET_ACCESS_KEY=""
AWS_DEFAULT_REGION=""
AWS_COGNITO_REGION=""
AWS_USER_POOL_ID=""
AWS_USER_POOL_CLIENT_ID=""
SNS_TOPIC_NAME=""
PINECONE_API_KEY=""
PINECONE_ENVIRONMENT=""
PINECONE_INDEX_NAME=""
MODEL_PATH="" # Where the model path is the appropriate path for the sentence_transformer model hosted on HuggingFace

Please note that TextWeaver requires the use of Amazon Cognito for authentication. You can find more information on how to set up Cognito here. Once you have Cognito set up, you can pass the required id tokens to the server using the Authorization header.

Install TextWeaver directly from PyPI using the following command:

pip install textweaver

Usage

Once installed, you can start the TextWeaver server using the following command:

textweaver

For further customization and detailed documentation, please refer to the project's repository.

Contribution

We welcome contributions from the community! Please check the contributing guidelines in the repository for more information on how you can get involved.

License

TextWeaver is released under the MIT License. See the LICENSE file in the repository for more details.

Contact

For any inquiries, support, or collaboration, please contact the author at wesladd@traingrc.com or open an issue on the project's GitHub page.

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

textweaver-0.2.7.tar.gz (13.3 kB view details)

Uploaded Source

Built Distribution

textweaver-0.2.7-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file textweaver-0.2.7.tar.gz.

File metadata

  • Download URL: textweaver-0.2.7.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for textweaver-0.2.7.tar.gz
Algorithm Hash digest
SHA256 d34d8984dc780d1bee29d89a10cc2cf62a5dfa28f85bbc2fddd3319a15544565
MD5 c0fff5d1cf3d9350b5c8e36ffa59cdda
BLAKE2b-256 368eeef75db92b45149d84234af1cfb8684f97f0fcee342a92de52ef12e48c10

See more details on using hashes here.

File details

Details for the file textweaver-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: textweaver-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for textweaver-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 1030da8127666b18b7bb8313dec772eb3865bb1eb934d2fcb8c2b2f72759bc52
MD5 0203397bab1c7efc260b7f4d88816ade
BLAKE2b-256 bbf2a6f763680d2fdab5cfbaaacef36758319daadda83d7a80b6677c75ed4aa8

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