* Introduced EmbeddingModel method in Client and Provider interfaces * Updated InsertThought and SearchThoughts methods to handle embedding models * Created embeddings table and updated match_thoughts function for model filtering * Removed embedding column from thoughts table * Adjusted permissions for new embeddings table
16 lines
392 B
Go
16 lines
392 B
Go
package ai
|
|
|
|
import (
|
|
"context"
|
|
|
|
thoughttypes "git.warky.dev/wdevs/amcs/internal/types"
|
|
)
|
|
|
|
type Provider interface {
|
|
Embed(ctx context.Context, input string) ([]float32, error)
|
|
ExtractMetadata(ctx context.Context, input string) (thoughttypes.ThoughtMetadata, error)
|
|
Summarize(ctx context.Context, systemPrompt, userPrompt string) (string, error)
|
|
Name() string
|
|
EmbeddingModel() string
|
|
}
|