This repo publishes the a pypl module that contains utility code used throughout the stage0 system. See the server.py for an example of how to use this code. See the ECHO documentation for information on how the Stage0 Echo Bot is implemented.
- Stage0 Developer Edition #TODO for now just Docker
- Python 3.12
- Pipenv
- Mongo Compass - if you want a way to look into the database
📁 stage0_py_utils/ # Repo root
│── 📁 stage0_py_utils/
│ │── 📁 agents/ # Echo Agents (Bot, Conversation, Echo)
│ │── 📁 config/ # System Wide configuration
│ │── 📁 echo/ # Echo Chat AI Framework
│ │── 📁 echo_utils/ # Echo related utilities
│ │── 📁 flask_utils/ # Flask related utilities
│ │── 📁 mongo_utils/ # MongoDB Utilities
│ │── 📁 evaluator/ # Echo evaluation utility
│ │── 📁 routes/ # Echo Flask Routes
│ │── 📁 services/ # Echo Persistence Services (Bot, Conversation)
│
│── 📁 tests/ # unittest code structure matches source
│ │── 📁 agents/
│ │── 📁 config/
│ │── 📁 echo/
│ │── ....
│ │── 📁 test_data/ # Testing Data
│ │ │── 📁 config/ # Config file testing data
│ │ │── 📁 evaluate/ # Echo Evaluate test data
│
│── README.md
│── ...
We use pipenv automation to manage dependencies and automate common tasks. Note that running the sample server will use the configuration values (Tokens, ID's, Port, etc.) from the FRAN bot. You can not run the sample server if the FRAN bot is already running.
pipenv install
pipenv run clean
pipenv run build
pipenv run check
pipenv run publish
NOTE: You should not need to use this, publishing is handled by GitHub Actions CI
pipenv run local
pipenv run debug
pipenv run stepci
NOTE: This assumes that the server is running at localhost:8580. Use pipenv run local
to start the server if needed