from typing import Dict, Tuple, Any def build_wp_candid_blog_knn_model_query( query: str, fields: Tuple[str] = ( "content", "title" ), k: int = 10, model_id: str = "sentence-transformers__all-mpnet-base-v2" ): output = [] for f in fields: output.append({ "field": f"embeddings.{f}.chunks.vector.predicted_value", "k": k, "num_candidates": 100, "query_vector_builder": { "text_embedding": { "model_id": model_id, "model_text": query } }, "boost": 1 / len(fields) }) return {"knn": output} def build_card_html(doc: Dict[str, Any], height_px: int = 200, show_chunks=False) -> str: url = f"{doc['link']}" fields = ["title", "excerpt"] fields_dict = {} fields_len = 0 for field in fields: if doc.get(field, None) is not None: fields_dict[field] = doc[field] fields_dict[field + "_txt"] = f"
{doc[field]}
" if (fields_len + len(doc[field])) > 999: rest_text_len = 999 - fields_len if rest_text_len > 0: fields_dict[field + "_txt"] = f"
{doc[field][:rest_text_len] + '[...]'}
" else: fields_dict[field + "_txt"] = f"{'[...]'}" fields_len = fields_len + len(doc[field]) else: fields_dict[field] = "" fields_dict[field + "_txt"] = "" html = f"""
Candid blog post: {doc['title']}

{fields_dict["excerpt_txt"]}
""" return html