From 732f9f1f94a98972d66ca9f3a634f84bc1979ea7 Mon Sep 17 00:00:00 2001 From: HuangHai <10402852@qq.com> Date: Fri, 4 Jul 2025 19:53:16 +0800 Subject: [PATCH] 'commit' --- dsLightRag/.gitignore | 72 ------------------ dsLightRag/.idea/.gitignore | 8 ++ dsLightRag/.idea/dsLightRag.iml | 12 +++ .../inspectionProfiles/profiles_settings.xml | 6 ++ dsLightRag/.idea/misc.xml | 4 + dsLightRag/.idea/modules.xml | 8 ++ dsLightRag/.idea/prettier.xml | 6 ++ dsLightRag/.idea/vcs.xml | 6 ++ .../Config/__pycache__/Config.cpython-310.pyc | Bin 0 -> 904 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 142 bytes .../__pycache__/LightRagUtil.cpython-310.pyc | Bin 0 -> 3029 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 311 bytes .../lightrag/__pycache__/base.cpython-310.pyc | Bin 0 -> 22186 bytes .../__pycache__/constants.cpython-310.pyc | Bin 0 -> 653 bytes .../__pycache__/lightrag.cpython-310.pyc | Bin 0 -> 50805 bytes .../__pycache__/namespace.cpython-310.pyc | Bin 0 -> 1302 bytes .../__pycache__/operate.cpython-310.pyc | Bin 0 -> 50656 bytes .../__pycache__/prompt.cpython-310.pyc | Bin 0 -> 23428 bytes .../__pycache__/types.cpython-310.pyc | Bin 0 -> 1300 bytes .../__pycache__/utils.cpython-310.pyc | Bin 0 -> 45377 bytes .../api/__pycache__/__init__.cpython-310.pyc | Bin 0 -> 172 bytes .../kg/__pycache__/__init__.cpython-310.pyc | Bin 0 -> 2586 bytes .../json_doc_status_impl.cpython-310.pyc | Bin 0 -> 7050 bytes .../__pycache__/json_kv_impl.cpython-310.pyc | Bin 0 -> 7647 bytes .../nano_vector_db_impl.cpython-310.pyc | Bin 0 -> 10492 bytes .../__pycache__/networkx_impl.cpython-310.pyc | Bin 0 -> 12161 bytes .../shared_storage.cpython-310.pyc | Bin 0 -> 13221 bytes .../llm/__pycache__/__init__.cpython-310.pyc | Bin 0 -> 148 bytes .../llm/__pycache__/openai.cpython-310.pyc | Bin 0 -> 10971 bytes 29 files changed, 50 insertions(+), 72 deletions(-) delete mode 100644 dsLightRag/.gitignore create mode 100644 dsLightRag/.idea/.gitignore create mode 100644 dsLightRag/.idea/dsLightRag.iml create mode 100644 dsLightRag/.idea/inspectionProfiles/profiles_settings.xml create mode 100644 dsLightRag/.idea/misc.xml create mode 100644 dsLightRag/.idea/modules.xml create mode 100644 dsLightRag/.idea/prettier.xml create mode 100644 dsLightRag/.idea/vcs.xml create mode 100644 dsLightRag/Config/__pycache__/Config.cpython-310.pyc create mode 100644 dsLightRag/Config/__pycache__/__init__.cpython-310.pyc create mode 100644 dsLightRag/Util/__pycache__/LightRagUtil.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/__init__.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/base.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/constants.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/lightrag.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/namespace.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/operate.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/prompt.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/types.cpython-310.pyc create mode 100644 dsLightRag/lightrag/__pycache__/utils.cpython-310.pyc create mode 100644 dsLightRag/lightrag/api/__pycache__/__init__.cpython-310.pyc create mode 100644 dsLightRag/lightrag/kg/__pycache__/__init__.cpython-310.pyc create mode 100644 dsLightRag/lightrag/kg/__pycache__/json_doc_status_impl.cpython-310.pyc create mode 100644 dsLightRag/lightrag/kg/__pycache__/json_kv_impl.cpython-310.pyc create mode 100644 dsLightRag/lightrag/kg/__pycache__/nano_vector_db_impl.cpython-310.pyc create mode 100644 dsLightRag/lightrag/kg/__pycache__/networkx_impl.cpython-310.pyc create mode 100644 dsLightRag/lightrag/kg/__pycache__/shared_storage.cpython-310.pyc create mode 100644 dsLightRag/lightrag/llm/__pycache__/__init__.cpython-310.pyc create mode 100644 dsLightRag/lightrag/llm/__pycache__/openai.cpython-310.pyc diff --git a/dsLightRag/.gitignore b/dsLightRag/.gitignore deleted file mode 100644 index 2b6cf871..00000000 --- a/dsLightRag/.gitignore +++ /dev/null @@ -1,72 +0,0 @@ -# Python-related files -__pycache__/ -*.py[cod] -*.egg-info/ -.eggs/ -*.tgz -*.tar.gz -*.ini - -# Virtual Environment -.venv/ -env/ -venv/ -*.env* -.env_example - -# Build / Distribution -dist/ -build/ -site/ - -# Logs / Reports -*.log -*.log.* -*.logfire -*.coverage/ -log/ - -# Caches -.cache/ -.mypy_cache/ -.pytest_cache/ -.ruff_cache/ -.gradio/ -.history/ -temp/ - -# IDE / Editor Files -.idea/ -.vscode/ -.vscode/settings.json - -# Framework-specific files -local_neo4jWorkDir/ -neo4jWorkDir/ - -# Data & Storage -inputs/ -rag_storage/ -examples/input/ -examples/output/ -output*/ - -# Miscellaneous -.DS_Store -TODO.md -ignore_this.txt -*.ignore.* - -# Project-specific files -dickens*/ -examples/book.txt -LightRAG.pdf -download_models_hf.py -lightrag-dev/ -gui/ - -# unit-test files -test_* - -# Cline files -memory-bank/ diff --git a/dsLightRag/.idea/.gitignore b/dsLightRag/.idea/.gitignore new file mode 100644 index 00000000..a7cdac76 --- /dev/null +++ b/dsLightRag/.idea/.gitignore @@ -0,0 +1,8 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml +# 基于编辑器的 HTTP 客户端请求 +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/dsLightRag/.idea/dsLightRag.iml b/dsLightRag/.idea/dsLightRag.iml new file mode 100644 index 00000000..55699d9e --- /dev/null +++ b/dsLightRag/.idea/dsLightRag.iml @@ -0,0 +1,12 @@ + + + + + + + + + + \ No newline at end of file diff --git a/dsLightRag/.idea/inspectionProfiles/profiles_settings.xml b/dsLightRag/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 00000000..105ce2da --- /dev/null +++ b/dsLightRag/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/dsLightRag/.idea/misc.xml b/dsLightRag/.idea/misc.xml new file mode 100644 index 00000000..a8cb0d4a --- /dev/null +++ b/dsLightRag/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/dsLightRag/.idea/modules.xml b/dsLightRag/.idea/modules.xml new file mode 100644 index 00000000..5ebd85f7 --- /dev/null +++ b/dsLightRag/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/dsLightRag/.idea/prettier.xml b/dsLightRag/.idea/prettier.xml new file mode 100644 index 00000000..8bc49dc7 --- /dev/null +++ b/dsLightRag/.idea/prettier.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/dsLightRag/.idea/vcs.xml b/dsLightRag/.idea/vcs.xml new file mode 100644 index 00000000..2e3f6920 --- /dev/null +++ b/dsLightRag/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/dsLightRag/Config/__pycache__/Config.cpython-310.pyc b/dsLightRag/Config/__pycache__/Config.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..162d6000b1debce1e94e770baba65b2836e5f680 GIT binary patch literal 904 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 NxS+K3Zn09f{{zzhESUfR literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/__pycache__/__init__.cpython-310.pyc b/dsLightRag/lightrag/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a4abd8a743f97d39af351d94528e5179a6caef0e GIT binary patch literal 311 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�pFA99{RpO=o^ZluapGpj`pFhzouKFm5UoMb!l(!iDjDG2YGS!@X}d0fAkm{m%sqD!|kZXopLv zZISnZT8`Zi37P2*D;XZTwGNyCP@5nSbasc3#is$jnVeeFuOY6;BGmJKk@9-D@dTsN zTP$jEel0>6ILw(yj>Hp2e@!>bG$9{EN85+uDWIQK=TSN!0W$7KNZ>B4_q0eJAQp|A zKlqzva>#6DnHpCH6E4Lo}P6FV4U#$D&aXI zvLjqS%X995-cpu-7t?U++IDiABe1d3=597#cd!4@kb?jtgh!k^+M8rBBi4O7< zHumAns*B*LYQ)VpN^tz?J%TfTEN|NY-~9yVZ8Vv7`b{xATE@C;(!G1%sD+FO)BhJx zL_dKtT6ZQ;&mTOr>;Bpj#Ire2|fj+ZS{NXPF+zN z=pVcb_3c1*%&uTOQK#TR{oRb!swi`)AMAqrNHI4{-3;~zyb+Q>;6BMUL*=Ab()|QF z^an`lXE6+{(9436+vi~s)b~V^XOen7W}Od7zVOGmw*Ngq_Fa8CQM8==3R)Vt+`kxu zYvL0T=hpXd9nyV2t{GS%t~uH5N`q^AbW@bRkOPC^+d6$ir)TBdfgT8pz1oRS58PP> zTwJLqJJJJ}8+7Y-^JUtikaZX@jhMJzxP#6Sdwh9L^9{Mw026#nD|iHeukfLl_BuLo za62{X7UHqH`IsrQRThPH)$DjM>3FMbSW=R4_3iIN?RQHwF4cfrq$dxA*~X(N9OWe| z$yzu_dFxD~?*LhVhPu^dM9k@SXN6^@e>ekwYTSoa7u0$DfNibOA#*FAi>WJ_I5mAf z9O3i3n&QK9AU#4Cb;WH#6=5qmmH6RXpMM`Nxf(4{orjjt7)v@z0EE-p6UOa&6X%W$ zlb|(kBD0!jabgdl4+OLK+hFLaHag7?#!QPYA}nzqX}M(U8Bc! zbr2y#3^)P=Ww^7`Zef!i))nxRfQTlT@q9t@xMCl)=CN^4arqp~F#MEi$K|7F%MtET6fC zwfK8qt(R1-9sA<%naEgp1g}u7jQkA#@EM8nk@~sV+|Q|8HWYq=DsT&5RJm+NA~T-K z{gTS9Md_!Bd?rqLqKecZ3& z#DwH;QM@3TG#I{29|T`TBpl;f#D`|~@9Y|Oi|Txe0y4ErGOY563ESG(5Fes05Tt&v=&hb;Kr zGKLbpqePD^xTPANQvx&BaS^191AIGN zo}-KcT?{9C%}gl{9|$$ZG3nLh_>lmke=?rIsuyF ze^?E8V+_ysfD|Ov>>~s^AwEll@CYJ4ArKh=G2rO^!pC}_-=T| zNquB+v%`IvY=__C zK)qg~?Y8oxi@v#>q`8pF6wZQg#2NmbxSGdQy7z88fRHSRZ@LpSDKvvq%?)pIPX)6& z8au1*(v^tc@G-PFXiK;G;5_+VD;I3Kj}dj4W?Z9FZHd>CkLC-Cm|q|Oc8_05?($+4xy1{M6%~!0=$~V_2BG0w zh)7EHO)ZVgvzVIwFd{y)=$0BH16D!LH_~5zz7cZ3lN9_qN7)@=;~$*MuCc$x=G-;k z_eO12lp6+Z5DaClq9^$RFOIp*6Tw4#-m5kI>>gmqE@_k?F?-^=A`4Q3aHml{2ATI> zmwEfU$W=0-9IS9*R-ntp2xi5m|B|YNq#IJm_weD9035p#D2_}Ahq&}dUuKTc6O*eQ z5>UD>Q4ZG-jg^`tU@{frU=j|dGE3<*^ckb&x8HJg)_MAfHyQhLd0*MMKF{Y!_5GC;c_f_I60IbN)Bbm(uF)dGLt%w>yr0P eB~w@MyMRYuKb`pWL^@T(mjhGDiHTHkD*0cqbSCcr literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/__pycache__/constants.cpython-310.pyc b/dsLightRag/lightrag/__pycache__/constants.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..05222d2c5b22e9f16a39e02f27a0d1df8886ca50 GIT binary patch literal 653 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 literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/__pycache__/operate.cpython-310.pyc b/dsLightRag/lightrag/__pycache__/operate.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b73be436509a790c6af3d67824d79ab716e70e05 GIT binary patch literal 50656 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 literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/__pycache__/utils.cpython-310.pyc b/dsLightRag/lightrag/__pycache__/utils.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d6b86e4a7c0452d6ef13530d358062d04bcd3cfb GIT binary patch literal 45377 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 literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/api/__pycache__/__init__.cpython-310.pyc b/dsLightRag/lightrag/api/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9de5204b19f1ad2a8e6a48bf7165a2fd22f92245 GIT binary patch literal 172 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 Qp3Up?=1EhZ(qZHO0@|U|#{d8T literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/kg/__pycache__/json_kv_impl.cpython-310.pyc b/dsLightRag/lightrag/kg/__pycache__/json_kv_impl.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..52b2fb37a331ab5fb7e8c26ed7ff701d790d2ba4 GIT binary patch literal 7647 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 literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/kg/__pycache__/nano_vector_db_impl.cpython-310.pyc b/dsLightRag/lightrag/kg/__pycache__/nano_vector_db_impl.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5e456932718168e43434fef3311f69a9fef0485d GIT binary patch literal 10492 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 literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/kg/__pycache__/networkx_impl.cpython-310.pyc b/dsLightRag/lightrag/kg/__pycache__/networkx_impl.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..047f12c611c351b1625da48a983c8de70a3a9e3e GIT binary patch literal 12161 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 literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/kg/__pycache__/shared_storage.cpython-310.pyc b/dsLightRag/lightrag/kg/__pycache__/shared_storage.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..857fd030b86ec7a65dd725568b2cbcbd5e424a51 GIT binary patch literal 13221 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 literal 0 HcmV?d00001 diff --git a/dsLightRag/lightrag/llm/__pycache__/__init__.cpython-310.pyc b/dsLightRag/lightrag/llm/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6655ec74feccadaf1f054b6ecab86a1f788ce3f3 GIT binary patch literal 148 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