Linux based, voice controlled, local AI for Elite Dangerous
I gave up trying to get EDCopilot to work on Linux, so I decided to build my own solution that uses a local AI.
Remember Farscape? What if your ship was alive and autonomous?
This project is not meant to be a 1:1 copy of EDCopilot, rather, the goal is to increase immersion and make your ship a character you can interact with, that will grow and change over time.
Built as an exercise to learn how to build AI solutions that include:
- Local AI (Lemonade)
- Monitoring log and config files
- Reacting to specific logs
- Accessing and updating a MongoDB
- API calls
- Speech to Text
- Text to Speech generation
- UI controls via key presses
- Retrieval Augmented Generation (RAG) for providing game context specific information
It is not too far off from parity with VoiceAttack, but still a significant way behind EDCopilot.
CURRENT FUNCTIONALITY (in brief):
- Voice controls for ship functions
- Alerts when you enter a system with a point of interest
- Providing next closest station when doing a Rare Commodities run
- Alerting when fuel is low
- Neutron plotting
- General information queries
CURRENT TASK:
- Clean up code
- Testing
- Add API calls for up to date information
- Fill out placeholder tool calls (market based)
FUTURE PLANS:
- AI tool implementations for ship controls
- Up-to-date market information
- Where is 'x', with intelligent context
- Saved states
...
- Fully autonomous ship control, so you can sit in the copilot seat with a second account, and be chauffered around the galaxy. Or have your second account follow you on trade runs.
EXAMPLES:
say: "Night vision" > night vision is activated
say: "Verity, when I say 'green googles' I want you to activate night vision"
say: "Where is the closest point of interest?"
say: "What is the point of interest in this system?"
say: "Give me a history of the Thargoids"
say: "Stop acting like an AI, add some enthusiasm and sarcasm to your personality"
FINAL NOTES:
This is not ready for deployment yet, not included in this repo is a properly indexed mongoDB with system information, POI locations, and a RAG db with the full context of the Elite Wiki that are not included here (pending license checks etc)