1import asyncio
2from os import getenv
3
4from kern.agent import Agent
5from kern.knowledge.knowledge import Knowledge
6from kern.knowledge.reader.wikipedia_reader import WikipediaReader
7from kern.vectordb.lightrag import LightRag
8
9vector_db = LightRag(
10 api_key=getenv("LIGHTRAG_API_KEY"),
11)
12
13knowledge = Knowledge(
14 name="My LightRag Knowledge Base",
15 description="This is a knowledge base that uses a LightRag Vector DB",
16 vector_db=vector_db,
17)
18
19agent = Agent(
20 knowledge=knowledge,
21 search_knowledge=True,
22 read_chat_history=False,
23)
24
25if __name__ == "__main__":
26 asyncio.run(
27 knowledge.ainsert(
28 name="Recipes",
29 path="cookbook/08_knowledge/testing_resources/cv_1.pdf",
30 metadata={"doc_type": "recipe_book"},
31 )
32 )
33
34 asyncio.run(
35 knowledge.ainsert(
36 name="Recipes",
37 topics=["Manchester United"],
38 reader=WikipediaReader(),
39 )
40 )
41
42 asyncio.run(
43 knowledge.ainsert(
44 name="Recipes",
45 url="https://en.wikipedia.org/wiki/Manchester_United_F.C.",
46 )
47 )
48
49 asyncio.run(
50 agent.aprint_response("What skills does Jordan Mitchell have?", markdown=True)
51 )
52
53 asyncio.run(
54 agent.aprint_response(
55 "In what year did Manchester United change their name?", markdown=True
56 )
57 )