Skip to content

Forecast on new AI tournament questions #18

Forecast on new AI tournament questions

Forecast on new AI tournament questions #18

name: Forecast on new AI tournament questions
on:
workflow_dispatch:
schedule:
- cron: "*/30 * * * *" # runs every 30 minutes. Make sure to skip already forecasted questions!
# Add concurrency group to prevent parallel runs
concurrency:
group: ${{ github.workflow }}
cancel-in-progress: false
# Daily job to run the simple forecast bot
jobs:
daily_build:
runs-on: ubuntu-latest # determines the machine that will run the job - keep as is
steps: # sets up the steps that will be run in order
# setup repository with all necessary dependencies - keep as is
- name: Check out repository
uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install poetry
uses: snok/install-poetry@v1
with:
virtualenvs-create: true
virtualenvs-in-project: true
installer-parallel: true
- name: Load cached venv
id: cached-poetry-dependencies
uses: actions/cache@v4
with:
path: .venv
key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }}
- name: Install dependencies
run: poetry install --no-interaction --no-root
- name: Run bot
run: |
poetry run python main.py
# this reads the environment variables from the github repository.
# Store under Settings --> Secrets and variables --> Actions
env:
METACULUS_TOKEN: ${{ secrets.METACULUS_TOKEN }} # replace this with the name of the variable under which you stored your own Metaculus token
PERPLEXITY_API_KEY: ${{ secrets.PERPLEXITY_API_KEY }}
EXA_API_KEY: ${{ secrets.EXA_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}