Merge pull request #873 from ParisNeo/main

Removed all useless try except around imports as pipmaster already handles that
This commit is contained in:
Yannick Stephan
2025-02-19 21:20:56 +01:00
committed by GitHub
11 changed files with 31 additions and 86 deletions

View File

@@ -34,14 +34,9 @@ if not pm.is_installed("psycopg-pool"):
if not pm.is_installed("asyncpg"): if not pm.is_installed("asyncpg"):
pm.install("asyncpg") pm.install("asyncpg")
try: import psycopg
import psycopg from psycopg.rows import namedtuple_row
from psycopg.rows import namedtuple_row from psycopg_pool import AsyncConnectionPool, PoolTimeout
from psycopg_pool import AsyncConnectionPool, PoolTimeout
except ImportError:
raise ImportError(
"`psycopg-pool, psycopg[binary,pool], asyncpg` library is not installed. Please install it via pip: `pip install psycopg-pool psycopg[binary,pool] asyncpg`."
)
class AGEQueryException(Exception): class AGEQueryException(Exception):

View File

@@ -10,13 +10,8 @@ import pipmaster as pm
if not pm.is_installed("chromadb"): if not pm.is_installed("chromadb"):
pm.install("chromadb") pm.install("chromadb")
try: from chromadb import HttpClient, PersistentClient
from chromadb import HttpClient, PersistentClient from chromadb.config import Settings
from chromadb.config import Settings
except ImportError as e:
raise ImportError(
"`chromadb` library is not installed. Please install it via pip: `pip install chromadb`."
) from e
@final @final

View File

@@ -20,12 +20,7 @@ from lightrag.base import (
if not pm.is_installed("faiss"): if not pm.is_installed("faiss"):
pm.install("faiss") pm.install("faiss")
try: import faiss
import faiss
except ImportError as e:
raise ImportError(
"`faiss` library is not installed. Please install it via pip: `pip install faiss`."
) from e
@final @final

View File

@@ -2,6 +2,7 @@ import asyncio
import inspect import inspect
import json import json
import os import os
import pipmaster as pm
from dataclasses import dataclass from dataclasses import dataclass
from typing import Any, Dict, List, final from typing import Any, Dict, List, final
@@ -20,14 +21,12 @@ from lightrag.utils import logger
from ..base import BaseGraphStorage from ..base import BaseGraphStorage
try: if not pm.is_installed("gremlinpython"):
from gremlin_python.driver import client, serializer pm.install("gremlinpython")
from gremlin_python.driver.aiohttp.transport import AiohttpTransport
from gremlin_python.driver.protocol import GremlinServerError from gremlin_python.driver import client, serializer
except ImportError as e: from gremlin_python.driver.aiohttp.transport import AiohttpTransport
raise ImportError( from gremlin_python.driver.protocol import GremlinServerError
"`gremlin` library is not installed. Please install it via pip: `pip install gremlin`."
) from e
@final @final

View File

@@ -14,13 +14,8 @@ if not pm.is_installed("configparser"):
if not pm.is_installed("pymilvus"): if not pm.is_installed("pymilvus"):
pm.install("pymilvus") pm.install("pymilvus")
try: import configparser
import configparser from pymilvus import MilvusClient
from pymilvus import MilvusClient
except ImportError as e:
raise ImportError(
"`pymilvus` library is not installed. Please install it via pip: `pip install pymilvus`."
) from e
config = configparser.ConfigParser() config = configparser.ConfigParser()
config.read("config.ini", "utf-8") config.read("config.ini", "utf-8")

View File

@@ -25,18 +25,13 @@ if not pm.is_installed("pymongo"):
if not pm.is_installed("motor"): if not pm.is_installed("motor"):
pm.install("motor") pm.install("motor")
try: from motor.motor_asyncio import (
from motor.motor_asyncio import ( AsyncIOMotorClient,
AsyncIOMotorClient, AsyncIOMotorDatabase,
AsyncIOMotorDatabase, AsyncIOMotorCollection,
AsyncIOMotorCollection, )
) from pymongo.operations import SearchIndexModel
from pymongo.operations import SearchIndexModel from pymongo.errors import PyMongoError
from pymongo.errors import PyMongoError
except ImportError as e:
raise ImportError(
"`motor, pymongo` library is not installed. Please install it via pip: `pip install motor pymongo`."
) from e
config = configparser.ConfigParser() config = configparser.ConfigParser()
config.read("config.ini", "utf-8") config.read("config.ini", "utf-8")

View File

@@ -18,12 +18,7 @@ from lightrag.base import (
if not pm.is_installed("nano-vectordb"): if not pm.is_installed("nano-vectordb"):
pm.install("nano-vectordb") pm.install("nano-vectordb")
try: from nano_vectordb import NanoVectorDB
from nano_vectordb import NanoVectorDB
except ImportError as e:
raise ImportError(
"`nano-vectordb` library is not installed. Please install it via pip: `pip install nano-vectordb`."
) from e
@final @final

View File

@@ -26,14 +26,8 @@ if not pm.is_installed("graspologic"):
if not pm.is_installed("oracledb"): if not pm.is_installed("oracledb"):
pm.install("oracledb") pm.install("oracledb")
try: from graspologic import embed
from graspologic import embed import oracledb
import oracledb
except ImportError as e:
raise ImportError(
"`oracledb` library is not installed. Please install it via pip: `pip install oracledb`."
) from e
class OracleDB: class OracleDB:

View File

@@ -38,14 +38,8 @@ import pipmaster as pm
if not pm.is_installed("asyncpg"): if not pm.is_installed("asyncpg"):
pm.install("asyncpg") pm.install("asyncpg")
try: import asyncpg
import asyncpg from asyncpg import Pool
from asyncpg import Pool
except ImportError as e:
raise ImportError(
"`asyncpg` library is not installed. Please install it via pip: `pip install asyncpg`."
) from e
class PostgreSQLDB: class PostgreSQLDB:

View File

@@ -15,16 +15,10 @@ config.read("config.ini", "utf-8")
import pipmaster as pm import pipmaster as pm
if not pm.is_installed("qdrant_client"): if not pm.is_installed("qdrant-client"):
pm.install("qdrant_client") pm.install("qdrant-client")
try: from qdrant_client import QdrantClient, models
from qdrant_client import QdrantClient, models
except ImportError:
raise ImportError(
"`qdrant_client` library is not installed. Please install it via pip: `pip install qdrant-client`."
)
def compute_mdhash_id_for_qdrant( def compute_mdhash_id_for_qdrant(

View File

@@ -20,13 +20,7 @@ if not pm.is_installed("pymysql"):
if not pm.is_installed("sqlalchemy"): if not pm.is_installed("sqlalchemy"):
pm.install("sqlalchemy") pm.install("sqlalchemy")
try: from sqlalchemy import create_engine, text
from sqlalchemy import create_engine, text
except ImportError as e:
raise ImportError(
"`pymysql, sqlalchemy` library is not installed. Please install it via pip: `pip install pymysql sqlalchemy`."
) from e
class TiDB: class TiDB: