Skip to main content
Glama
embedding.ex1.1 kB
defmodule HexdocsMcp.Embeddings.Embedding do @moduledoc """ Schema for storing document embeddings using SQLiteVec. """ use Ecto.Schema import Ecto.Changeset schema "embeddings" do field(:package, :string) field(:version, :string) field(:source_file, :string) field(:source_type, :string) field(:start_byte, :integer) field(:end_byte, :integer) field(:text_snippet, :string) field(:text, :string) field(:content_hash, :string) field(:url, :string) field(:embedding, SqliteVec.Ecto.Float32) timestamps() end @required_fields [:package, :version, :source_file, :text, :embedding, :content_hash] @optional_fields [:source_type, :start_byte, :end_byte, :text_snippet, :url] def changeset(embedding, attrs) do embedding |> cast(attrs, @required_fields ++ @optional_fields) |> validate_required(@required_fields) |> validate_length(:package, min: 1) |> validate_length(:version, min: 1) |> validate_length(:source_file, min: 1) |> unique_constraint([:package, :version, :source_file, :text_snippet]) end end

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bradleygolden/hexdocs-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server