5f4f1f7508
Añade campos params y output al frontmatter YAML de las 506 funciones del registry. Cada parámetro tiene descripción semántica (qué representa, unidades, rango típico) y cada función describe qué produce su output. Permite a agentes razonar sobre cadenas de composición (ej: prices → log_return → sharpe_ratio) sin leer código.
1.6 KiB
1.6 KiB
name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
| name | kind | lang | domain | version | purity | signature | description | tags | uses_functions | uses_types | returns | returns_optional | error_type | imports | params | output | tested | tests | test_file_path | file_path | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| embedding_encode | function | py | infra | 1.0.0 | impure | def embedding_encode(model: SentenceTransformer, texts: list, mode: str = 'document') -> list | Genera embeddings normalizados para textos. Aplica prefijos e5 automaticamente segun mode (document/query). |
|
|
false | error_go_core |
|
|
list[list[float]]: embeddings normalizados (L2=1), dimensión 384 para e5-small | false | python/functions/embedding/model.py |
Ejemplo
model = embedding_load_model(".local/models/e5-small")
# Indexar documentos
doc_embs = embedding_encode(model, ["La IA transforma la industria", "Python es versatil"], mode="document")
# Buscar
query_embs = embedding_encode(model, ["¿Que es machine learning?"], mode="query")
Notas
mode="document" agrega prefijo "passage: ", mode="query" agrega "query: ". Estos prefijos son requeridos por modelos e5 para retrieval optimo. Los embeddings retornados son float32 normalizados (norma L2 = 1). Para e5-small la dimension es 384. Throughput ~1900 docs/s en CPU.