engine-core

engine-core

Chat strategies for LLMs

Stars: 75

Visit
 screenshot

Engine Core is a project that demonstrates a pattern for enabling Large Language Models (LLMs) to undertake tasks with a dynamic system prompt and a collection of tool functions known as chat strategies. These strategies allow for the dynamic alteration of chat history, system prompts, and available tools on every run. The project includes example strategies such as demoStrategy, backendStrategy, and shellStrategy. Additionally, LLM integrations like Anthropic or OpenAI have been extracted into adapters to enable running the same app code and strategies while switching foundation models.

README:

enginelabs

Engine is an open source software engineer.

It is model agnostic and extensible, based on 'strategies' and 'adapters'.

Chat strategies offer a means to dynamically alter context, system prompts, and available tools on every run to optimise for a particular engineering task or environment.

This project includes 3 example strategies:

  1. demoStrategy - a simple illustrative example which serves as a starting point for creating new strategies
  2. backendStrategy - a slightly more comprehensive example where the LLM works on a local Fastify app (running on http://localhost:8080) to create database migrations and API endpoints
  3. shellStrategy - a LLM powered shell that can write files and run processes

Adapters make any foundational LLM (GPT, Claude) hot swappable.

Getting started

  1. Ensure Docker is installed and running
  2. Copy .env.example to .env and add at least one of OPENAI_API_KEY or ANTHROPIC_API_KEY
  3. Run bin/cli
  4. Select a LLM model for which you have provided an API key
  5. Type help to see what you can do

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

Apache 2.0

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for engine-core

Similar Open Source Tools

For similar tasks

For similar jobs