module

EpisodeEmbedding

Class methods

exists?(episode_id : Int64) : Bool
Source
hide_topic(user_id : Int64, topic : String)
Source
stale_source_episode_ids(limit : Int32 = 100) : Array(NamedTuple(id: Int64, title: String, description: String | Nil))

Returns episodes with stale embeddings (source != 'title' and not transcript) for re-embedding.

Source
top_tags_for_user(user_id : Int64, limit : Int32 = 100, offset : Int32 = 0) : Array(TagCount)
Source
unembedded_episode_ids(limit : Int32 = 100) : Array(NamedTuple(id: Int64, title: String, description: String | Nil))

Returns episode IDs that have no embedding yet (for batch processing).

Source
untopicked_episode_ids(limit : Int32 = 100) : Array(NamedTuple(id: Int64, title: String, description: String | Nil))

Returns episode IDs that have embeddings but no topics (for backfill).

Source
upsert(episode_id : Int64, embedding : Array(Float64), source : String, topics : Array(String) = [] of String)
Source
upsert_batch(items : Array(NamedTuple(episode_id: Int64, embedding: Array(Float64), source: String)))
Source

Nested types