mirror of
https://github.com/hwchase17/langchain.git
synced 2026-06-09 18:50:33 +00:00
**Description:** The Apache AGE graph integration incorrectly handled node merging, allowing duplicate nodes with different IDs but the same type and other properties. Unlike [Neo4j](cdf6202156/libs/community/langchain_community/graphs/neo4j_graph.py (L47)), [Memgraph](cdf6202156/libs/community/langchain_community/graphs/memgraph_graph.py (L50)), [Kuzu](cdf6202156/libs/community/langchain_community/graphs/kuzu_graph.py (L253)), and [Gremlin](cdf6202156/libs/community/langchain_community/graphs/gremlin_graph.py (L165)), it did not use the node ID as the primary identifier for merging. This inconsistency caused data integrity issues and unexpected behavior when users expected updates to specific nodes by ID. **Solution:** This PR modifies the `node_insert_query` to `MERGE` nodes based on label and ID *only* and updates properties with `SET`, aligning the behavior with other graph database integrations. The `_format_properties` method was also modified to handle id overrides. **Impact:** This fix ensures data integrity by preventing duplicate nodes, and provides a consistent behavior across graph database integrations.
🦜️🧑🤝🧑 LangChain Community
Quick Install
pip install langchain-community
What is it?
LangChain Community contains third-party integrations that implement the base interfaces defined in LangChain Core, making them ready-to-use in any LangChain application.
For full documentation see the API reference.
📕 Releases & Versioning
langchain-community is currently on version 0.0.x
All changes will be accompanied by a patch version increase.
💁 Contributing
As an open-source project in a rapidly developing field, we are extremely open to contributions, whether it be in the form of a new feature, improved infrastructure, or better documentation.
For detailed information on how to contribute, see the Contributing Guide.