Skip to main content

No project description provided

Project description

Hal9: Create and Share Generative Apps

License: MIT Hal9 PyPi Downloads GitHub star chart

Create and deploy generative (LLMs and diffusers) applications (chatbots and APIs) in seconds.

  • Open: Use any model (OpenAI, Llama, Groq, MidJourney) and any library like (LangChainl, DSPy).
  • Intuitive: No need to learn app frameworks (Flask), simply use input() and print(), or write file to disk.
  • Scalable: Engineers can integrate your app with scalable technilogies (Docker, Kubernetes, etc)
  • Powerful: Using an OS process (stdin, stdout, files) as our app contract, enables long-running agents, multiple programming languages, and complex system dependencies.

Focus on AI (RAG, fine-tuning, aligment, training) and skip engineering tasks (frontend development, backend integration, deployment, operations).

Getting started

Create and share a chatbot in seconds by running the following commands:

pip install hal9

hal9 create chatbot
hal9 deploy chatbot

To customize further, read the following sections.

Creation

By default hal9 create we will use the OpenAI template, you can choose different ones as follows:

hal9 create my-chatbot --template openai
hal9 create my-chatbot --template midjourney
hal9 create my-chatbot --template groq
hal9 create my-chatbot --template langchain

A template provides ready to use code with specific technologies and use cases. If you already have code, you can skip this step.

Development

To make changes to your project, open my-chatbot/ in your IDE and modify my-chatbot/app.py.

You can then run your project as follows:

cd my-chatbot

pip install -r requirements.txt

export OPENAI_KEY=YOUR_OPENAI_KEY

If you customized your template with --template make sure to set the correct key, for example export GROQ_KEY=YOUR_GROQ_KEY.

You can then run your application locally with:

hal9 run .

or

cd ..
hal9 run my-chatbot

This command is just a convenience wrapper over python app.py

Deployment

The deploy command will prepare for deployment your generative app.

For example, you can prepare deployment as a generative app (Hal9), an API (Flask), a data app (Streamlit), or a container (Docker).

hal9 deploy my-chatbot --target hal9
hal9 deploy my-chatbot --target docker

Eeach command is tasked with preparing the deployment of your project folder. For example, --target docker will create a Dockerfile file that gets this project ready to run in cloud containers.

For personal use, --target hal9 supports a free tier at hal9.com; enterprise support is also available to deploy with --target hal9 --url hal9.yourcompany.com

Contributing

Pull Requests are welcomed to consider additional application templates or deployment targets. See CONTRIBUTING.

Project details


Release history Release notifications | RSS feed

This version

2.2.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hal9-2.2.2.tar.gz (4.9 kB view hashes)

Uploaded Source

Built Distribution

hal9-2.2.2-py3-none-any.whl (7.2 kB view hashes)

Uploaded Python 3

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