Я работаю над извлечением связей, используя класс PropertyGraphStore из LangChain, следуя подходу, изложенному в официальном руководстве. Моя цель — ограничить извлекаемые узлы и связи с помощью SchemaLLMPathExtractor.
Вот проблема:
< li>Когда я использую локальные модели, такие как Llama 3.1 или Mistral через Ollama, никакие связи не извлекаются при применении SchemaLLMPathExtractor.
Если я удалю SchemaLLMPathExtractor, он извлечет большое количество связей, но они не будут ограничены необходимым образом.
Интересно, что когда я переключаюсь на API OpenAI вместо Ollama, все работает как положено, даже с SchemaLLMPathExtractor.
Я выполнил инструкции из документации LangChain и убедился, что локальные модели настроены правильно. Вот шаги, которые я попробовал:
Проверил совместимость Ollama с версией LangChain, которую я использую.
Дважды проверили схему и входные конфигурации на соответствие примерам, приведенным в руководстве.
Протестировано с использованием различных подсказок, чтобы убедиться, что проблема не в формате ввода.
Убедились, что локальные модели Ollama верны. настроены правильно, поскольку они создают выходные данные без SchemaLLMPathExtractor.
Проверил определения схемы и убедился, что они соответствуют примеру в документации. .
Тем не менее, я столкнулся с той же проблемой с Олламой. Ошибок нет; выходные данные просто не содержат никаких связей при использовании SchemaLLMPathExtractor.
Ключевые детали:
# Creating an instance of Neo4jPropertyGraphStore with environment configuration
graph_store = Neo4jPropertyGraphStore(
username=NEO4J_USER,
password=NEO4J_PASS,
url=NEO4J_URL,
database=NEO4J_DB_NAME
)
vec_store = None
# Creating an instance of SchemaLLMPathExtractor with OpenAI model and schema configuration
kg_extractor = SchemaLLMPathExtractor(
llm=OpenAI(model=LLM_MODEL, temperature=TEMPERATURE),
possible_entities=entities,
possible_relations=relations,
kg_validation_schema=validation_schema,
strict=True,
)
# Creating an instance of PropertyGraphIndex with documents and environment configuration
index = PropertyGraphIndex.from_documents(
documents,
embed_model=OpenAIEmbedding(model_name=EMBEDDING_MODEL),
show_progress=True,
kg_extractors=[kg_extractor],
property_graph_store=graph_store,
vector_store=vec_store,
)
# Creating an instance of Neo4jPropertyGraphStore with environment configuration
graph_store = Neo4jPropertyGraphStore(
username=NEO4J_USER,
password=NEO4J_PASS,
url=NEO4J_URL,
database=NEO4J_DB_NAME
)
vec_store = None
# Creating an instance of SchemaLLMPathExtractor with Ollama model and schema configuration
kg_extractor = SchemaLLMPathExtractor(
llm=Ollama(model="mistral:latest"),
possible_entities=entities,
possible_relations=relations,
kg_validation_schema=validation_schema,
strict=True,
)
# Creating an instance of PropertyGraphIndex with documents and environment configuration
index = PropertyGraphIndex.from_documents(
documents,
embed_model=OllamaEmbedding(model_name="mistral:latest", base_url="http://localhost:11434"),
show_progress=True,
kg_extractors=[kg_extractor],
property_graph_store=graph_store,
vector_store=vec_store,
)
Кто-нибудь сталкивался с подобной проблемой с Ollama и SchemaLLMPathExtractor?
Требуются ли какие-либо конкретные настройки или настройки, чтобы эта установка работала?
Мы будем очень признательны за любые идеи или предложения!
Я работаю над извлечением связей, используя класс PropertyGraphStore из LangChain, следуя подходу, изложенному в официальном руководстве. Моя цель — ограничить извлекаемые узлы и связи с помощью SchemaLLMPathExtractor. Вот проблема: [list] < li>Когда я использую локальные модели, такие как Llama 3.1 или Mistral через Ollama, [b]никакие связи[/b] не извлекаются при применении SchemaLLMPathExtractor.
[*]Если я удалю SchemaLLMPathExtractor, он извлечет большое количество связей, но они не будут ограничены необходимым образом.
[*]Интересно, что когда я переключаюсь на API OpenAI вместо Ollama, все работает как положено, даже с SchemaLLMPathExtractor.
Я выполнил инструкции из документации LangChain и убедился, что локальные модели настроены правильно. Вот шаги, которые я попробовал: [list] [*]Проверил совместимость Ollama с версией LangChain, которую я использую.
[*]Дважды проверили схему и входные конфигурации на соответствие примерам, приведенным в руководстве.
[*]Протестировано с использованием различных подсказок, чтобы убедиться, что проблема не в формате ввода.
[*]Убедились, что локальные модели Ollama верны. настроены правильно, поскольку они создают выходные данные без SchemaLLMPathExtractor.
[*]Проверил определения схемы и убедился, что они соответствуют примеру в документации. .
[/list] Тем не менее, я столкнулся с той же проблемой с Олламой. Ошибок нет; выходные данные просто не содержат никаких связей при использовании SchemaLLMPathExtractor. Ключевые детали:
[/list] Код для OpenAI: [code]# Creating an instance of Neo4jPropertyGraphStore with environment configuration graph_store = Neo4jPropertyGraphStore( username=NEO4J_USER, password=NEO4J_PASS, url=NEO4J_URL, database=NEO4J_DB_NAME ) vec_store = None
# Creating an instance of SchemaLLMPathExtractor with OpenAI model and schema configuration kg_extractor = SchemaLLMPathExtractor( llm=OpenAI(model=LLM_MODEL, temperature=TEMPERATURE), possible_entities=entities, possible_relations=relations, kg_validation_schema=validation_schema, strict=True, )
# Creating an instance of PropertyGraphIndex with documents and environment configuration index = PropertyGraphIndex.from_documents( documents, embed_model=OpenAIEmbedding(model_name=EMBEDDING_MODEL), show_progress=True, kg_extractors=[kg_extractor], property_graph_store=graph_store, vector_store=vec_store, ) [/code] Код для Олламы: [code]# Creating an instance of Neo4jPropertyGraphStore with environment configuration graph_store = Neo4jPropertyGraphStore( username=NEO4J_USER, password=NEO4J_PASS, url=NEO4J_URL, database=NEO4J_DB_NAME ) vec_store = None
# Creating an instance of SchemaLLMPathExtractor with Ollama model and schema configuration kg_extractor = SchemaLLMPathExtractor( llm=Ollama(model="mistral:latest"), possible_entities=entities, possible_relations=relations, kg_validation_schema=validation_schema, strict=True, )
# Creating an instance of PropertyGraphIndex with documents and environment configuration index = PropertyGraphIndex.from_documents( documents, embed_model=OllamaEmbedding(model_name="mistral:latest", base_url="http://localhost:11434"), show_progress=True, kg_extractors=[kg_extractor], property_graph_store=graph_store, vector_store=vec_store, ) [/code] [list] [*]Кто-нибудь сталкивался с подобной проблемой с Ollama и SchemaLLMPathExtractor?
[*]Требуются ли какие-либо конкретные настройки или настройки, чтобы эта установка работала? Мы будем очень признательны за любые идеи или предложения!