LangChain4j is a Java-native library that integrates concepts from popular LLM frameworks such as LangChain, Haystack, and LlamaIndex. Its purpose is to simplify the integration of large language models into Java applications using familiar Java idioms.
LangChain4j Domino extends this functionality to HCL Domino environments. It enables seamless use of LangChain4j within Domino applications and introduces document loaders for accessing Domino data as part of LangChain4j’s LLM workflows.
- Server and Designer plugins for HCL Domino 14+
- Support for standalone Java applications
- Utilises Domino JNX
- Adds document loaders for Domino documents across various scenarios
- Demo code available at: https://github.com/sbasegmez/LLM-Demos
- See the Wiki for details on supported models, vector databases, and other modules
The langchain4j-domino library leverages the Domino JNX API to provide Domino implementations for DocumentSource and Document Loaders.
Refer to the following classes for more information:
- DominoAttachmentDocumentSource.java
- DominoDataDocumentSource.java
- DominoDocumentLoader.java
- MetadataDefinition.java
The org.openntf.langchain4j.xsp plugin provides the necessary bindings for using the core library in XPages applications. It should be installed on both Domino Servers and Designer clients.
- Domino port for Observability
- Beans for XPages
- Configuration management
- Logging enhancements
- Support for Java Agents and DOTS
- A source bundle for Domino Designer is not available yet.
Please submit feature requests and bug reports via GitHub Issues.
Join the OpenNTF Discord Channel for feedback and discussions.
This project is licensed under the Apache License 2.0.