Rag Custom Embeddings
This cookbook is an implementation of Agentic RAG using Sentence Transformer Reranker with multilingual data.
1"""2Rag Custom Embeddings3=============================45This cookbook is an implementation of Agentic RAG using Sentence Transformer Reranker with multilingual data.6"""78from kern.agent import Agent9from kern.knowledge.embedder.sentence_transformer import SentenceTransformerEmbedder10from kern.knowledge.knowledge import Knowledge11from kern.knowledge.reranker.sentence_transformer import SentenceTransformerReranker12from kern.models.openai import OpenAIResponses13from kern.vectordb.pgvector import PgVector1415search_results = [16 "Organic skincare for sensitive skin with aloe vera and chamomile.",17 "New makeup trends focus on bold colors and innovative techniques",18 "Bio-Hautpflege für empfindliche Haut mit Aloe Vera und Kamille",19 "Neue Make-up-Trends setzen auf kräftige Farben und innovative Techniken",20 "Cuidado de la piel orgánico para piel sensible con aloe vera y manzanilla",21 "Las nuevas tendencias de maquillaje se centran en colores vivos y técnicas innovadoras",22 "针对敏感肌专门设计的天然有机护肤产品",23 "新的化妆趋势注重鲜艳的颜色和创新的技巧",24 "敏感肌のために特別に設計された天然有機スキンケア製品",25 "新しいメイクのトレンドは鮮やかな色と革新的な技術に焦点を当てています",26]2728knowledge = Knowledge(29 vector_db=PgVector(30 db_url="postgresql+psycopg://ai:ai@localhost:5532/ai",31 table_name="sentence_transformer_rerank_docs",32 embedder=SentenceTransformerEmbedder(33 id="sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2"34 ),35 reranker=SentenceTransformerReranker(model="BAAI/bge-reranker-v2-m3"),36 ),37)3839for result in search_results:40 knowledge.insert(41 text_content=result,42 metadata={43 "source": "search_results",44 },45 )464748# ---------------------------------------------------------------------------49# Create Agent50# ---------------------------------------------------------------------------51agent = Agent(52 model=OpenAIResponses(id="gpt-5.2"),53 knowledge=knowledge,54 search_knowledge=True,55 instructions=[56 "Include sources in your response.",57 "Always search your knowledge before answering the question.",58 ],59 markdown=True,60)616263# ---------------------------------------------------------------------------64# Run Agent65# ---------------------------------------------------------------------------66if __name__ == "__main__":67 test_queries = [68 "What organic skincare products are good for sensitive skin?",69 "Tell me about makeup trends in different languages",70 "Compare skincare and makeup information across languages",71 ]7273 for query in test_queries:74 agent.print_response(75 query,76 stream=True,77 show_full_reasoning=True,78 )Run the Example
1# Clone and setup repo2git clone https://github.com/kern-ai/kern.git3cd kern/cookbook/02_agents/07_knowledge45# Create and activate virtual environment6./scripts/demo_setup.sh7source .venvs/demo/bin/activate89# Optiona: Run PgVector (needs docker)10./cookbook/scripts/run_pgvector.sh1112python rag_custom_embeddings.py