JSON Reader

The JSON Reader processes JSON files and converts them into documents that can be used with Kern's knowledge system.

Code

1import json
2from pathlib import Path
3
4from kern.knowledge.reader.json_reader import JSONReader
5
6reader = JSONReader()
7
8json_path = Path("tmp/test.json")
9test_data = {"key": "value"}
10json_path.write_text(json.dumps(test_data))
11
12try:
13 print("Starting read...")
14 documents = reader.read(json_path)
15
16 if documents:
17 for doc in documents:
18 print(doc.name)
19 print(doc.content)
20 print(f"Content length: {len(doc.content)}")
21 print("-" * 80)
22 else:
23 print("No documents were returned")
24
25except Exception as e:
26 print(f"Error type: {type(e)}")
27 print(f"Error occurred: {str(e)}")

Usage

Set up your virtual environment

1uv venv --python 3.12
2source .venv/bin/activate
1uv venv --python 3.12
2.venv\Scripts\activate

Install dependencies

1uv pip install -U kern-ai openai

Set environment variables

1export OPENAI_API_KEY=xxx

Run Agent

1python examples/basics/knowledge/concepts/readers/overview/json_reader.py
1python examples/basics/knowledge/concepts/readers/overview/json_reader.py

Params

ParameterTypeDefaultDescription
pathPathRequiredPath to JSON file to read
chunkboolFalseWhether to chunk the documents (overrides base Reader default)