Skip to content

embabel/embabel-llm-database

Repository files navigation

Build

Kotlin Spring Apache Maven ChatGPT Jinja JSON GitHub Actions SonarQube IntelliJ IDEA

    

Embabel Large Language Model Database

Overview

Embabel Database is REST-compliant database based on a simple repository structure. Default implementation includes an in-memory database with a JSON local file persistence.

The Database is loaded from the Project Llm LeaderBoard Project with a dedicated Agent to load and maintain on a periodic basis.

Modules

Embabel Database Core

Embabel Database Core comprises of the core repository definition including models and initial In-Memory implementation

Embabel Database Agent

Embabel Database Agent comprises of the repository maintenance agent implemented in Java. This agent is responsible for retrieveing and updating the repositories from the Llm LeaderBoard using a Git and parsing process.

Embabel Database Server

Embabel Database Server is a Spring Rest standlone server that supports running the repository and exposing it via REST endpoints.

GET /api/v1/models returns an array of JSON objects representing a ModelMetadata object GET /api/v1/models/{model id} returns a specific model GET /api/v1/models/search/findByName?name={model name} returns a list of matching ModelMetadata including providers and costs for each matching model GET /api/v1/models/search/findByNameContains?contains={model name} returns a list of matching ModelMetadata where the name contians the 'name' passed GET /api/v1/models/search/findByNameAndProvider?name={model name}&provider={provider name} returns a list of matching ModelMetadata GET /api/v1/models/search/findByTags?tags={tag name} returns a list of matching ModelMetadata GET /api/v1/models/search/findByProvider?provider={provider name} returns a list of matching ModelMetadata GET /api/v1/models/count returns the number of models in the repository GET /api/v1/models/lastUpdate returns a timestamp for when the repository was last refreshed GET /api/v1/tags returns a list of tag objects that models are mapped to GET /api/v1/agents/{agentName}/processes returns a list of process names from memory for a specific agent name

Repository maintenance is via an Agent approach. The server provides an MCP Server compliant toolset as well as a direct, manual mechanism to trigger the Agent. The Agent will validate if the repository needs refreshing. POST /api/v1/agents/{agentName} manually triggers the repository maintenance agent (e.g. POST /api/v1/agents/A1ModelRepositoryAgent)

Testing

Testing

Docker

Docker

Standalone

Standalone

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.


© 2025 Embabel Software, Inc.

About

Large Language Model Database

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •