Deploy with Docker Compose! We recommend deploying with Docker
Compose, as it
works easily with just one line.
At Helicone we believe that open-source software makes the world a better place. We are committed to open-source and we made a guide to make it easy for you to deploy your own instance of Helicone.
Running locally
Running Helicone locally should be super easy. Just a few scripts.
Please clone our Repo and follow the instructions below.
git clone git@github.com:Helicone/helicone.git
cd helicone
Step 1 - Install all the things
Requirements
brew install supabase/tap/supabase
Install Wrangler and Yarn
nvm install 20
nvm use 20
npm install -g wrangler
npm install -g yarn
Set environment variables
cd valhalla/jawn
cp .env.example .env
cd web
cp .env.example .env
Take a look at the environment files you just copied. You’ll want to comment out the parts under “Self-Hosting”, and keep the ones under “Manual Hosting”.
Step 2 - Start all the services
Start Supabase
Start Clickhouse + Minio
python3 -m venv env
source env/bin/activate
pip install tabulate requests minio
pip install -r clickhouse/requirements.txt
# This will start clickhouse locally
python3 clickhouse/ch_hcone.py --restart --no-password --host localhost
python3 minio_hcone.py --restart
Start Workers
# Install worker dependencies
cd worker
yarn
./run_all_workers.sh
Start Jawn (Serves Web)
In a new terminal tab, run the following:
nvm use 20
cd valhalla/jawn
cp .env.example .env
yarn && yarn dev
Start Web
In a new terminal tab, run the following:
nvm use 20
cp .env.example web/.env
cd web
yarn
yarn dev:local -p 3000
Step 3 - Setup your instance
You are done!
export OPENAI_API_KEY="sk-"
export HELICONE_API_KEY="sk-helicone-aizk36y-5yue2my-qmy5tza-n7x3aqa"
curl --request POST \
--url http://localhost:8787/v1/chat/completions \
--header "Authorization: Bearer $OPENAI_API_KEY" \
--header "Helicone-Auth: Bearer $HELICONE_API_KEY" \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: identity' \
--header 'helicone-property-hello: world' \
--data '{
"model": "gpt-4o-mini",
"messages": [
{
"role": "system",
"content": "generate a prompt for stable diffusion using this article.\n The prompt should instruct the image generation model to generate a image that would be suitable for the main image of the article.\n Therefore, the image should be relevant to the article, while being photorealistic, and safe for work.\n Only include the prompt, and do not include a introduction to the prompt. The entire prompt should be 90 characters or less. Make it as relevant to the image as possible, but do not include people or faces in the prompt."
}
]
}'
You can login to Helicone at http://localhost:3000
with the following credentials:
User: test@helicone.ai
Password: password
Change the Org to Organization for Test
and then you should be able to see your requests!
Please do not hesitate to reach out on discord if you have any questions.