fix: e501

This commit is contained in:
Frederick2313072 2025-09-24 20:43:00 +08:00
parent b011521dd7
commit 18f9648a19
2 changed files with 10 additions and 8 deletions

View File

@ -9,7 +9,6 @@ from configs import dify_config
from core.rag.datasource.vdb.field import Field
from core.rag.datasource.vdb.vector_base import BaseVector
from core.rag.datasource.vdb.vector_factory import AbstractVectorFactory
from core.rag.datasource.vdb.vector_type import VectorType
from core.rag.embedding.embedding_base import Embeddings
from core.rag.models.document import Document
from extensions.ext_database import db
@ -47,7 +46,8 @@ class PineconeVector(BaseVector):
self._pc = Pinecone(api_key=config.api_key)
# Normalize index name: lowercase, only a-z0-9- and <=45 chars
import re, hashlib
import hashlib
import re
base_name = collection_name.lower()
base_name = re.sub(r'[^a-z0-9-]+', '-', base_name) # replace invalid chars with '-'
base_name = re.sub(r'-+', '-', base_name).strip('-')
@ -55,7 +55,7 @@ class PineconeVector(BaseVector):
suffix_len = 24 # 24 hex digits (96-bit entropy)
if len(base_name) > 45:
hash_suffix = hashlib.sha256(base_name.encode()).hexdigest()[:suffix_len]
truncated_name = base_name[:45-(suffix_len+1)].rstrip('-')
truncated_name = base_name[:45 - (suffix_len + 1)].rstrip('-')
self._index_name = f"{truncated_name}-{hash_suffix}"
else:
self._index_name = base_name
@ -162,9 +162,13 @@ class PineconeVector(BaseVector):
safe_meta: dict[str, Any] = {}
# lift common identifiers to top-level fields for filtering
for k, v in raw_meta.items():
if isinstance(v, (str, int, float, bool)):
safe_meta[k] = v
elif isinstance(v, list) and all(isinstance(x, str) for x in v):
if (
isinstance(v, (str, int, float, bool))
or (
isinstance(v, list)
and all(isinstance(x, str) for x in v)
)
):
safe_meta[k] = v
else:
safe_meta[k] = json.dumps(v, ensure_ascii=False)

View File

@ -1,5 +1,4 @@
from core.rag.datasource.vdb.pinecone.pinecone_vector import PineconeConfig, PineconeVector
from core.rag.models.document import Document
from tests.integration_tests.vdb.test_vector_store import (
AbstractVectorTest,
setup_mock_redis,
@ -26,5 +25,4 @@ class PineconeVectorTest(AbstractVectorTest):
def test_pinecone_vector():
PineconeVectorTest().run_all_tests()