LLM agent for interacting with neuroscience tools. Enables ChatGPT-style interactions to query brain regions, morphologies, electrical traces, and scientific literature.
The easiest way to run the project is with Docker Compose:
- Install Docker and Docker Compose
- Create
.env
file with required variables:
OPENAI_API_KEY=...
KEYCLOAK_ID=...
KEYCLOAK_SECRET=...
KEYCLOAK_ISSUER=...
NEXTAUTH_SECRET=...
- Start the services and initialize the database:
docker compose up
docker exec -it neuroagent-backend-1 alembic -x url=postgresql://postgres:pwd@postgres:5432/neuroagent upgrade head
docker exec -it neuroagent-minio-1 mc alias set myminio http://minio:9000 minioadmin minioadmin && docker exec -it neuroagent-minio-1 mc mb myminio/neuroagent
To enable the brain region resolving tool, retrieve your bearer token and make sure to run the following script:
python backend/src/neuroagent/scripts/embed_hierarchies.py $token -e https://staging.openbraininstitute.org/api/entitycore/ -u http://localhost:9000 -b neuroagent -a minioadmin -s minioadmin
which stores a json file in your minio/s3 instance.
- Access the application at
http://localhost:3000
Notes:
- First run will take longer to build frontend and backend images
- To rebuild individual services:
docker compose build frontend
ordocker compose build backend
- Database changes persist in
neuroagent_postgres_data
volume - MinIO data persists in
neuroagent_minio_data
volume - Redis data persists in
neuroagent_redis_data
volume - To reset database:
docker volume rm neuroagent_postgres_data
- To stop all services:
docker compose down
See instructions in frontend/README.md
and backend/README.md
.
The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.
Copyright © 2024 Blue Brain Project/EPFL
Copyright © 2025 Open Brain Institute