Java framework for large language model applications
Top 87.6% on sourcepulse
This Java framework aims to simplify the integration and orchestration of various Large Language Models (LLMs) for developers. It provides a unified API layer to abstract away differences between LLM providers, enabling flexible chaining of models, prompt engineering, and retrieval-augmented generation (RAG) capabilities.
How It Works
The framework employs an adapter pattern to support multiple LLM providers, starting with OpenAI and planning for Baidu Wenxin Yiyan and iFlytek Spark. It offers distinct modes: a "Chain" mode for sequential model interaction, a "Retrieval" mode for RAG using document loading, text splitting, and vectorization, and a "Prompt Engineering" mode for dynamic prompt customization. An annotation-driven approach (@ChatConfig
, @UserMessage
, @V
, etc.) allows for declarative configuration of conversational agents and their behavior.
Quick Start & Requirements
pom.xml
in your Maven project.ConversationalChainTest.java
, ConversationalRetrievalChainTest.java
, ServiceTest.java
, PromptTest.java
, DocumentTest.java
, SplitterTest.java
.Highlighted Details
Maintenance & Community
The project appears to be actively developed by mainpropath
. No specific community channels or roadmap links are provided in the README.
Licensing & Compatibility
The README does not explicitly state a license. Compatibility for commercial use or closed-source linking is not specified.
Limitations & Caveats
The framework is primarily focused on Java and currently has full support only for OpenAI models, with others in progress. The lack of a specified license may pose a barrier to commercial adoption.
1 year ago
Inactive