Skip to main content

Generate per-session LoRA adapters for inference tasks

Project description

Tessera Hypernetwork

Generate per-session LoRA adapters for inference tasks. This is the Python hypernetwork service component of Tessera, which works alongside the Rust core to provide LoRA adapter generation via hypernetwork synthesis.

Features

  • Doc-to-LoRA with SHINE: Generate adapters from document content using SHINE (ICML 2026) for long-context internalization
  • Text-to-LoRA: Generate adapters from natural language descriptions
  • Metadata-to-LoRA: Generate adapters from structured user metadata
  • OpenAI-compatible API: Easy integration with existing tooling
  • FastAPI: Modern async Python web framework

Installation

pip install tessera-hypernetwork

Usage

Start the hypernetwork server:

python -m tessera_hypernetwork.server

Or use the CLI:

tessera-hypernetwork serve

API

The hypernetwork service provides a FastAPI server with the following endpoints:

  • POST /v1/generate - Generate a LoRA adapter for a given prompt
  • GET /health - Health check endpoint

Development

Install development dependencies:

pip install tessera-hypernetwork[dev]

Run tests:

pytest

Integration with Tessera

This hypernetwork service is designed to work with the Tessera Rust core. The Rust core handles semantic caching, vector similarity search, and adapter composition, while this Python service handles the actual LoRA adapter generation via hypernetwork synthesis.

Full Tessera CLI Lifecycle

The complete Tessera system provides a comprehensive CLI for all operations:

# Show version
tessera --version

# Generate a LoRA adapter
tessera generate "Senior litigation associate specializing in IP law" \
  --base-model meta-llama/Llama-3-8B \
  --rank 16 \
  --output ./adapter.safetensors

# Start the API server
tessera serve --port 8080

# Check if Tessera is running
tessera health --url http://localhost:8080

# List cached adapters
tessera list
tessera list --base-model meta-llama/Llama-3-8B

# Cache management
tessera cache clear
tessera cache stats
tessera cache prune --max-age-days 7

# LoRAx operations
tessera lorax import --path ./adapter.safetensors --name my-adapter
tessera lorax list
tessera lorax unload --name my-adapter

# PEFT operations
tessera peft import --path ./adapter.safetensors --name my-adapter
tessera peft unload --name my-adapter

For the complete Tessera system, see: https://github.com/theoddden/Tessera

License

Apache-2.0

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

tessera_hypernetwork-0.2.3.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

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

tessera_hypernetwork-0.2.3-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file tessera_hypernetwork-0.2.3.tar.gz.

File metadata

  • Download URL: tessera_hypernetwork-0.2.3.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tessera_hypernetwork-0.2.3.tar.gz
Algorithm Hash digest
SHA256 c086fa7a28b37efffb4a9385db3baaaded08e550b442662dbbc09b0d9caf44ac
MD5 cbb8337ab89a38502b73770493c596b7
BLAKE2b-256 73d53f249ede83b6cb93fab522c950be2eec54f1cf45d39baa3b8e760bec2ef2

See more details on using hashes here.

File details

Details for the file tessera_hypernetwork-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for tessera_hypernetwork-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8f821928c4b0d67ff6c0a4071d32598cb74203b1e0333798fdcc2c599aada643
MD5 6fda8886f8a3aa411923c9ff6ba76945
BLAKE2b-256 7f88d3e2454d79df6066b551081ddf99a14176af9c8599008e0db027fb114e7e

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