diff --git a/.buildinfo b/.buildinfo
new file mode 100644
index 000000000..aa7e43c0a
--- /dev/null
+++ b/.buildinfo
@@ -0,0 +1,4 @@
+# Sphinx build info version 1
+# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
+config: d715baa215c7ec41736a2dbe475a89ad
+tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/.doctrees/apis/components/agent_prompt.doctree b/.doctrees/apis/components/agent_prompt.doctree
new file mode 100644
index 000000000..2e7fd93ba
Binary files /dev/null and b/.doctrees/apis/components/agent_prompt.doctree differ
diff --git a/.doctrees/apis/components/index.doctree b/.doctrees/apis/components/index.doctree
new file mode 100644
index 000000000..7862c761d
Binary files /dev/null and b/.doctrees/apis/components/index.doctree differ
diff --git a/.doctrees/apis/core/index.doctree b/.doctrees/apis/core/index.doctree
new file mode 100644
index 000000000..b124dfbdb
Binary files /dev/null and b/.doctrees/apis/core/index.doctree differ
diff --git a/.doctrees/apis/eval/index.doctree b/.doctrees/apis/eval/index.doctree
new file mode 100644
index 000000000..fff64c752
Binary files /dev/null and b/.doctrees/apis/eval/index.doctree differ
diff --git a/.doctrees/apis/index.doctree b/.doctrees/apis/index.doctree
new file mode 100644
index 000000000..abfabd537
Binary files /dev/null and b/.doctrees/apis/index.doctree differ
diff --git a/.doctrees/apis/optim/index.doctree b/.doctrees/apis/optim/index.doctree
new file mode 100644
index 000000000..772538f92
Binary files /dev/null and b/.doctrees/apis/optim/index.doctree differ
diff --git a/.doctrees/apis/tracing/index.doctree b/.doctrees/apis/tracing/index.doctree
new file mode 100644
index 000000000..7d63ca968
Binary files /dev/null and b/.doctrees/apis/tracing/index.doctree differ
diff --git a/.doctrees/apis/utils/index.doctree b/.doctrees/apis/utils/index.doctree
new file mode 100644
index 000000000..72f21eb96
Binary files /dev/null and b/.doctrees/apis/utils/index.doctree differ
diff --git a/.doctrees/contributor/contribute_to_document.doctree b/.doctrees/contributor/contribute_to_document.doctree
new file mode 100644
index 000000000..3525b066e
Binary files /dev/null and b/.doctrees/contributor/contribute_to_document.doctree differ
diff --git a/.doctrees/contributor/contribution_guide.doctree b/.doctrees/contributor/contribution_guide.doctree
new file mode 100644
index 000000000..6c021b2b2
Binary files /dev/null and b/.doctrees/contributor/contribution_guide.doctree differ
diff --git a/.doctrees/contributor/index.doctree b/.doctrees/contributor/index.doctree
new file mode 100644
index 000000000..3ec3ec34a
Binary files /dev/null and b/.doctrees/contributor/index.doctree differ
diff --git a/.doctrees/developer_notes/agent.doctree b/.doctrees/developer_notes/agent.doctree
new file mode 100644
index 000000000..174b84ab9
Binary files /dev/null and b/.doctrees/developer_notes/agent.doctree differ
diff --git a/.doctrees/developer_notes/base_data_class.doctree b/.doctrees/developer_notes/base_data_class.doctree
new file mode 100644
index 000000000..30587ac37
Binary files /dev/null and b/.doctrees/developer_notes/base_data_class.doctree differ
diff --git a/.doctrees/developer_notes/component.doctree b/.doctrees/developer_notes/component.doctree
new file mode 100644
index 000000000..a9a316a16
Binary files /dev/null and b/.doctrees/developer_notes/component.doctree differ
diff --git a/.doctrees/developer_notes/data_pipeline.doctree b/.doctrees/developer_notes/data_pipeline.doctree
new file mode 100644
index 000000000..3142142ef
Binary files /dev/null and b/.doctrees/developer_notes/data_pipeline.doctree differ
diff --git a/.doctrees/developer_notes/db.doctree b/.doctrees/developer_notes/db.doctree
new file mode 100644
index 000000000..2b2735d41
Binary files /dev/null and b/.doctrees/developer_notes/db.doctree differ
diff --git a/.doctrees/developer_notes/embedder.doctree b/.doctrees/developer_notes/embedder.doctree
new file mode 100644
index 000000000..b2bf24b1a
Binary files /dev/null and b/.doctrees/developer_notes/embedder.doctree differ
diff --git a/.doctrees/developer_notes/embedder_xy.doctree b/.doctrees/developer_notes/embedder_xy.doctree
new file mode 100644
index 000000000..6832de480
Binary files /dev/null and b/.doctrees/developer_notes/embedder_xy.doctree differ
diff --git a/.doctrees/developer_notes/evaluation.doctree b/.doctrees/developer_notes/evaluation.doctree
new file mode 100644
index 000000000..c707fa533
Binary files /dev/null and b/.doctrees/developer_notes/evaluation.doctree differ
diff --git a/.doctrees/developer_notes/generator.doctree b/.doctrees/developer_notes/generator.doctree
new file mode 100644
index 000000000..dca126e3b
Binary files /dev/null and b/.doctrees/developer_notes/generator.doctree differ
diff --git a/.doctrees/developer_notes/index.doctree b/.doctrees/developer_notes/index.doctree
new file mode 100644
index 000000000..c19a3c816
Binary files /dev/null and b/.doctrees/developer_notes/index.doctree differ
diff --git a/.doctrees/developer_notes/lightrag_design_philosophy.doctree b/.doctrees/developer_notes/lightrag_design_philosophy.doctree
new file mode 100644
index 000000000..4d1715885
Binary files /dev/null and b/.doctrees/developer_notes/lightrag_design_philosophy.doctree differ
diff --git a/.doctrees/developer_notes/llm_intro.doctree b/.doctrees/developer_notes/llm_intro.doctree
new file mode 100644
index 000000000..eb6f2fcaa
Binary files /dev/null and b/.doctrees/developer_notes/llm_intro.doctree differ
diff --git a/.doctrees/developer_notes/logging.doctree b/.doctrees/developer_notes/logging.doctree
new file mode 100644
index 000000000..edb77249c
Binary files /dev/null and b/.doctrees/developer_notes/logging.doctree differ
diff --git a/.doctrees/developer_notes/logging_tracing.doctree b/.doctrees/developer_notes/logging_tracing.doctree
new file mode 100644
index 000000000..f27b000ea
Binary files /dev/null and b/.doctrees/developer_notes/logging_tracing.doctree differ
diff --git a/.doctrees/developer_notes/model_client.doctree b/.doctrees/developer_notes/model_client.doctree
new file mode 100644
index 000000000..c5d3069c4
Binary files /dev/null and b/.doctrees/developer_notes/model_client.doctree differ
diff --git a/.doctrees/developer_notes/optimizer.doctree b/.doctrees/developer_notes/optimizer.doctree
new file mode 100644
index 000000000..ad293f32f
Binary files /dev/null and b/.doctrees/developer_notes/optimizer.doctree differ
diff --git a/.doctrees/developer_notes/parameter.doctree b/.doctrees/developer_notes/parameter.doctree
new file mode 100644
index 000000000..2866c7bf3
Binary files /dev/null and b/.doctrees/developer_notes/parameter.doctree differ
diff --git a/.doctrees/developer_notes/prompt.doctree b/.doctrees/developer_notes/prompt.doctree
new file mode 100644
index 000000000..fbca57190
Binary files /dev/null and b/.doctrees/developer_notes/prompt.doctree differ
diff --git a/.doctrees/developer_notes/rag.doctree b/.doctrees/developer_notes/rag.doctree
new file mode 100644
index 000000000..5453b0668
Binary files /dev/null and b/.doctrees/developer_notes/rag.doctree differ
diff --git a/.doctrees/developer_notes/react_agent_xy.doctree b/.doctrees/developer_notes/react_agent_xy.doctree
new file mode 100644
index 000000000..aa7532a72
Binary files /dev/null and b/.doctrees/developer_notes/react_agent_xy.doctree differ
diff --git a/.doctrees/developer_notes/retriever.doctree b/.doctrees/developer_notes/retriever.doctree
new file mode 100644
index 000000000..c5db0bfe5
Binary files /dev/null and b/.doctrees/developer_notes/retriever.doctree differ
diff --git a/.doctrees/developer_notes/retriever_xy.doctree b/.doctrees/developer_notes/retriever_xy.doctree
new file mode 100644
index 000000000..973d560fb
Binary files /dev/null and b/.doctrees/developer_notes/retriever_xy.doctree differ
diff --git a/.doctrees/developer_notes/text_splitter.doctree b/.doctrees/developer_notes/text_splitter.doctree
new file mode 100644
index 000000000..89bb03f37
Binary files /dev/null and b/.doctrees/developer_notes/text_splitter.doctree differ
diff --git a/.doctrees/developer_notes/tool_helper.doctree b/.doctrees/developer_notes/tool_helper.doctree
new file mode 100644
index 000000000..b6c6fb1a2
Binary files /dev/null and b/.doctrees/developer_notes/tool_helper.doctree differ
diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle
new file mode 100644
index 000000000..b7b1d93dc
Binary files /dev/null and b/.doctrees/environment.pickle differ
diff --git a/.doctrees/get_started/community.doctree b/.doctrees/get_started/community.doctree
new file mode 100644
index 000000000..42f084ec9
Binary files /dev/null and b/.doctrees/get_started/community.doctree differ
diff --git a/.doctrees/get_started/index.doctree b/.doctrees/get_started/index.doctree
new file mode 100644
index 000000000..f81edb620
Binary files /dev/null and b/.doctrees/get_started/index.doctree differ
diff --git a/.doctrees/get_started/installation.doctree b/.doctrees/get_started/installation.doctree
new file mode 100644
index 000000000..c3d6c8037
Binary files /dev/null and b/.doctrees/get_started/installation.doctree differ
diff --git a/.doctrees/get_started/introduction.doctree b/.doctrees/get_started/introduction.doctree
new file mode 100644
index 000000000..423199ff5
Binary files /dev/null and b/.doctrees/get_started/introduction.doctree differ
diff --git a/.doctrees/get_started/lightrag_in_10_mins.doctree b/.doctrees/get_started/lightrag_in_10_mins.doctree
new file mode 100644
index 000000000..6126060a7
Binary files /dev/null and b/.doctrees/get_started/lightrag_in_10_mins.doctree differ
diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree
new file mode 100644
index 000000000..be8bb49dd
Binary files /dev/null and b/.doctrees/index.doctree differ
diff --git a/.doctrees/resources/index.doctree b/.doctrees/resources/index.doctree
new file mode 100644
index 000000000..6c5ac7242
Binary files /dev/null and b/.doctrees/resources/index.doctree differ
diff --git a/.doctrees/resources/resources.doctree b/.doctrees/resources/resources.doctree
new file mode 100644
index 000000000..29181dd64
Binary files /dev/null and b/.doctrees/resources/resources.doctree differ
diff --git a/.doctrees/tutorials/eval_a_rag.doctree b/.doctrees/tutorials/eval_a_rag.doctree
new file mode 100644
index 000000000..2436275ed
Binary files /dev/null and b/.doctrees/tutorials/eval_a_rag.doctree differ
diff --git a/.doctrees/tutorials/index.doctree b/.doctrees/tutorials/index.doctree
new file mode 100644
index 000000000..7b19bf84c
Binary files /dev/null and b/.doctrees/tutorials/index.doctree differ
diff --git a/.doctrees/tutorials/introduction_to_basedataclass.doctree b/.doctrees/tutorials/introduction_to_basedataclass.doctree
new file mode 100644
index 000000000..3db261b7d
Binary files /dev/null and b/.doctrees/tutorials/introduction_to_basedataclass.doctree differ
diff --git a/.doctrees/tutorials/logging.doctree b/.doctrees/tutorials/logging.doctree
new file mode 100644
index 000000000..e57b6d01f
Binary files /dev/null and b/.doctrees/tutorials/logging.doctree differ
diff --git a/.nojekyll b/.nojekyll
new file mode 100644
index 000000000..e69de29bb
diff --git a/_images/ReAct.jpg b/_images/ReAct.jpg
new file mode 100644
index 000000000..b062d2582
Binary files /dev/null and b/_images/ReAct.jpg differ
diff --git a/_sources/apis/components/agent_prompt.rst.txt b/_sources/apis/components/agent_prompt.rst.txt
new file mode 100644
index 000000000..5432c9121
--- /dev/null
+++ b/_sources/apis/components/agent_prompt.rst.txt
@@ -0,0 +1,71 @@
+.. _agent_prompt:
+
+.. _DEFAULT_REACT_AGENT_SYSTEM_PROMPT:
+
+DEFAULT_REACT_AGENT_SYSTEM_PROMPT
+----------------------------------
+
+This is the default prompt used by the system to interact with the agents. It contains the following structure:
+
+.. code-block:: python
+
+ DEFAULT_REACT_AGENT_SYSTEM_PROMPT = r"""
+ {# role/task description #}
+ You task is to answer user's query with minimum steps and maximum accuracy using the tools provided.
+ {# REACT instructions #}
+ Each step you will read the previous Thought, Action, and Observation(execution result of the action)steps and then provide the next Thought and Action.
+
+ You only have access to the following tools:
+ {# tools #}
+ {% for tool in tools %}
+ {{ loop.index }}. ToolName: {{ tool.metadata.name }}
+ Tool Description: {{ tool.metadata.description }}
+ Tool Parameters: {{ tool.metadata.fn_schema_str }} {#tool args can be misleading, especially if we already have type hints and docstring in the function#}
+ {% endfor %}
+ {# output is always more robust to use json than string #}
+ ---
+ Your output must be in valid JSON format(raw Python string format) with two keys:
+ {
+ "thought": "
+
+LightRAG structure
+
+.. raw:: html
+
+