Alchemind

View Source

Core library for the Alchemind project that provides interfaces, behaviors, and types for LLM interactions.

Overview

This is the core package of the Alchemind umbrella application, containing the foundational components that all provider-specific implementations build upon. It defines the common interfaces and behaviors that ensure a consistent API across different LLM providers.

Features

  • Common type definitions for LLM interactions
  • Behavior modules that provider implementations must conform to
  • Core utilities and helper functions

Usage

This package is primarily used by other Alchemind packages and is not typically used directly. However, you can use the core interfaces to implement your own provider:

defmodule YourCustomProvider do
  @behaviour Alchemind.Provider
  
  # Implement the required callbacks
  # ...
end

Installation

The package can be installed by adding alchemind to your list of dependencies in mix.exs:

def deps do
  [
    {:alchemind, "~> 0.1.0-rc1"}
  ]
end

Development

You can run tests specifically for this core package with:

cd apps/alchemind
mix test

Documentation

Documentation can be generated with ExDoc:

cd apps/alchemind
mix docs