Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(community): Provide fallback relationshipType in case it is not present in graph_transformer #7521

Merged
merged 5 commits into from
Jan 22, 2025

Conversation

hlminh2000
Copy link
Contributor

@hlminh2000 hlminh2000 commented Jan 14, 2025

Although difficult to reproduce, I've ran into a few times when relationshipType was undefined and so the extraction fails.

In these cases I'd still like to have the relationship being captured in my knowledge graph, so it seems appropriate to provide the transformer with a fallback value it can use, in this case defaulted to "unknown". This also allows for the value to be overridden with something else in cases where "unknown" already means something in an existing context.

I'm happy to contribute to anything that may need to be updated to reflect this info, like documentations, just need a pointer :)

@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Jan 14, 2025
Copy link

vercel bot commented Jan 14, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
langchainjs-docs 🛑 Canceled (Inspect) Jan 22, 2025 9:24pm
1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
langchainjs-api-refs ⬜️ Ignored (Inspect) Jan 22, 2025 9:24pm

@dosubot dosubot bot added the auto:improvement Medium size change to existing code to handle new use-cases label Jan 14, 2025
@hlminh2000 hlminh2000 marked this pull request as draft January 14, 2025 13:48
@hlminh2000 hlminh2000 marked this pull request as ready for review January 14, 2025 13:48
@hlminh2000 hlminh2000 changed the title Provide fallback relationshipType in case it is not present in graph_transformer feat(community): Provide fallback relationshipType in case it is not present in graph_transformer Jan 14, 2025
@dosubot dosubot bot added auto:nit Small modifications/deletions, fixes, deps or improvements to existing code or docs auto:bug Related to a bug, vulnerability, unexpected error with an existing feature labels Jan 15, 2025
@@ -254,6 +258,7 @@ export class LLMGraphTransformer {
strictMode = true,
nodeProperties = [],
relationshipProperties = [],
fallbackRelationshipType = "unknown,
Copy link
Collaborator

@jacoblee93 jacoblee93 Jan 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Think you're missing a quote here!

And don't forget to run yarn format

Copy link
Collaborator

@jacoblee93 jacoblee93 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this!

CC @tomasonjo for a look as well

@tomasonjo
Copy link
Contributor

Actually, can you make the default fallback relationship type Null, so the default behavior isn't changed. When the fallback relationship is configured, then you can use it as fallback.

Also describe the new attribute in docstring please.

@hlminh2000
Copy link
Contributor Author

@tomasonjo @jacoblee93 thank you both for your reviews. Addressed and pushed!

@jacoblee93
Copy link
Collaborator

Will wait for your final approval @tomasonjo

@tomasonjo
Copy link
Contributor

Lgtm

@jacoblee93 jacoblee93 merged commit 0397e93 into langchain-ai:main Jan 22, 2025
30 of 31 checks passed
@jacoblee93
Copy link
Collaborator

Thank you both!

@vercel vercel bot temporarily deployed to Preview – langchainjs-docs January 22, 2025 21:24 Inactive
FilipZmijewski added a commit to FilipZmijewski/langchainjs that referenced this pull request Jan 30, 2025
* Rename auth method in docs

* fix(core): Fix trim messages mutation bug (langchain-ai#7547)

* release(core): 0.3.31 (langchain-ai#7548)

* fix(community): Updated Embeddings URL (langchain-ai#7545)

* fix(community): make sure guardrailConfig can be added even with anthropic models (langchain-ai#7542)

* docs: Fix PGVectorStore import in install dependencies (TypeScript) example (langchain-ai#7533)

* fix(community): Airtable url (langchain-ai#7532)

* docs: Fix typo in OpenAIModerationChain example (langchain-ai#7528)

* docs: Resolves langchain-ai#7483, resolves langchain-ai#7274 (langchain-ai#7505)

Co-authored-by: jacoblee93 <[email protected]>

* docs: Rename auth method in IBM docs (langchain-ai#7524)

* docs: correct misspelling (langchain-ai#7522)

Co-authored-by: jacoblee93 <[email protected]>

* release(community): 0.3.25 (langchain-ai#7549)

* feat(azure-cosmosdb): add session context for a user mongodb (langchain-ai#7436)

Co-authored-by: jacoblee93 <[email protected]>

* release(azure-cosmosdb): 0.2.7 (langchain-ai#7550)

* fix(ci): Fix build (langchain-ai#7551)

* feat(anthropic): Add Anthropic PDF support (document type) in invoke (langchain-ai#7496)

Co-authored-by: jacoblee93 <[email protected]>

* release(anthropic): 0.3.12 (langchain-ai#7552)

* chore(core,langchain,community): Relax langsmith deps (langchain-ai#7556)

* release(community): 0.3.26 (langchain-ai#7557)

* release(core): 0.3.32 (langchain-ai#7558)

* Release 0.3.12 (langchain-ai#7559)

* fix(core): Prevent cache misses from triggering model start callback runs twice (langchain-ai#7565)

* fix(core): Ensure that cached flag in run extras is only set for cache hits (langchain-ai#7566)

* release(core): 0.3.33 (langchain-ai#7567)

* feat(community): Adds graph_document to export list (langchain-ai#7555)

Co-authored-by: quantropi-minh <[email protected]>
Co-authored-by: jacoblee93 <[email protected]>

* fix(langchain): Fix ZeroShotAgent createPrompt with correct formatted tool names (langchain-ai#7510)

* docs: Add document for AzureCosmosDBMongoChatMessageHistory (langchain-ai#7519)

Co-authored-by: root <root@CPC-yangq-FRSGK>

* fix(langchain): Allow pulling hub prompts with associated models (langchain-ai#7569)

* fix(community,aws): Update handleLLMNewToken to include chunk metadata (langchain-ai#7568)

Co-authored-by: jacoblee93 <[email protected]>

* feat(community): Provide fallback relationshipType in case it is not present in graph_transformer (langchain-ai#7521)

Co-authored-by: quantropi-minh <[email protected]>
Co-authored-by: jacoblee93 <[email protected]>

* docs: Add redirect (langchain-ai#7570)

* fix(langchain,core): Add shim for hub mustache templates with nested input variables (langchain-ai#7581)

* fix(chat-models): honor disableStreaming even for `generateUncached` (langchain-ai#7575)

* release(core): 0.3.34 (langchain-ai#7584)

* feat(langchain): Add hub entrypoint with automatic dynamic entrypoint of models (langchain-ai#7583)

* chore(ollama): Export `OllamaEmbeddingsParams` interface (langchain-ai#7574)

* docs: Clarify tool creation process in structured outputs documentation (langchain-ai#7578)

Co-authored-by: Sahar Shemesh <[email protected]>
Co-authored-by: jacoblee93 <[email protected]>

* fix(community): Set awaitHandlers to true in upstash ratelimit (langchain-ai#7571)

Co-authored-by: Jacob Lee <[email protected]>

* fix(core): Fix trim messages mutation (langchain-ai#7585)

* feat(openai): Make only AzureOpenAI respect Azure env vars, remove class defaults, update withStructuredOutput defaults (langchain-ai#7535)

* fix(community): Make postgresConnectionOptions optional in PostgresRecordManager (langchain-ai#7580)

Co-authored-by: jacoblee93 <[email protected]>

* release(community): 0.3.27 (langchain-ai#7586)

* release(ollama): 0.1.5 (langchain-ai#7587)

* Release 0.3.13 (langchain-ai#7588)

* release(openai): 0.4.0 (langchain-ai#7589)

* release(core): 0.3.35 (langchain-ai#7590)

* fix(ci): Update lock (langchain-ai#7591)

* feat(core): Allow passing returnDirect in tool wrapper params (langchain-ai#7594)

* release(core): 0.3.36 (langchain-ai#7595)

* fix(openai): Revert Azure default withStructuredOutput changes (langchain-ai#7596)

* release(openai): 0.4.1 (langchain-ai#7597)

* feat(openai): Refactor to allow easier subclassing (langchain-ai#7598)

* release(openai): 0.4.2 (langchain-ai#7599)

* feat(deepseek): Adds Deepseek integration (langchain-ai#7604)

* release(deepseek): 0.0.1 (langchain-ai#7608)

* feat: update Novita AI doc (langchain-ai#7602)

* Add deployment chat to chat class

* feat(langchain): Add DeepSeek to initChatModel (langchain-ai#7609)

* Release 0.3.14 (langchain-ai#7611)

* fix: Add test for pdf uploads anthropic (langchain-ai#7613)

* feat: Update google genai to support file uploads (langchain-ai#7612)

* chore(google-genai): Drop .only in test (langchain-ai#7614)

* release(google-genai): 0.1.7 (langchain-ai#7615)

* Upadate Watsonx sdk

* fix(core): Fix stream events bug when errors are thrown too quickly during iteration (langchain-ai#7617)

* release(core): 0.3.37 (langchain-ai#7619)

* fix(langchain): Fix Groq import for hub (langchain-ai#7620)

* docs: update README/intro

* Release 0.3.15

* feat(community): improve support for Tavily search tool args (langchain-ai#7561)

* feat(community): Add boolean metadata type support in Supabase structured query translator (langchain-ai#7601)

* feat(google-genai): Add support for fileUri in media type in Google GenAI (langchain-ai#7621)

Co-authored-by: Jacob Lee <[email protected]>

* release(google-genai): 0.1.8 (langchain-ai#7628)

* release(community): 0.3.28 (langchain-ai#7629)

* Rework interfaces in llms as well

* Bump watsonx-ai sdk version

* Remove unused code

* Add fake auth

* Fix broken changes

---------

Co-authored-by: Jacob Lee <[email protected]>
Co-authored-by: Jacky Chen <[email protected]>
Co-authored-by: Mohamed Belhadj <[email protected]>
Co-authored-by: Brian Ploetz <[email protected]>
Co-authored-by: Eduard-Constantin Ibinceanu <[email protected]>
Co-authored-by: Jonathan V <[email protected]>
Co-authored-by: ucev <[email protected]>
Co-authored-by: crisjy <[email protected]>
Co-authored-by: Adham Badr <[email protected]>
Co-authored-by: Minh Ha <[email protected]>
Co-authored-by: quantropi-minh <[email protected]>
Co-authored-by: Chi Thu Le <[email protected]>
Co-authored-by: fatmelon <[email protected]>
Co-authored-by: root <root@CPC-yangq-FRSGK>
Co-authored-by: Mohamad Mohebifar <[email protected]>
Co-authored-by: David Duong <[email protected]>
Co-authored-by: Brace Sproul <[email protected]>
Co-authored-by: Matus Gura <[email protected]>
Co-authored-by: Sahar Shemesh <[email protected]>
Co-authored-by: Sahar Shemesh <[email protected]>
Co-authored-by: Cahid Arda Öz <[email protected]>
Co-authored-by: Jason <[email protected]>
Co-authored-by: vbarda <[email protected]>
Co-authored-by: Vadym Barda <[email protected]>
Co-authored-by: Hugo Borsoni <[email protected]>
Co-authored-by: Arman Ghazaryan <[email protected]>
Co-authored-by: Andy <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto:bug Related to a bug, vulnerability, unexpected error with an existing feature auto:improvement Medium size change to existing code to handle new use-cases auto:nit Small modifications/deletions, fixes, deps or improvements to existing code or docs size:M This PR changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants