AI-SmartFuse-Framework  by mainpropath

Java framework for large language model applications

created 1 year ago
311 stars

Top 87.6% on sourcepulse

GitHubView on GitHub
Project Summary

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

  • Install: Download the project and include the pom.xml in your Maven project.
  • Prerequisites: Java, Maven. OpenAI models are currently supported; others are in progress.
  • Demo: See ConversationalChainTest.java, ConversationalRetrievalChainTest.java, ServiceTest.java, PromptTest.java, DocumentTest.java, SplitterTest.java.

Highlighted Details

  • Supports conversational chains, allowing multiple LLMs to collaborate.
  • Enables RAG by ingesting and retrieving information from various document types (TXT, Excel, Word, PPT, PDF, HTML).
  • Offers annotation-based configuration for defining LLM interactions, memory management, and moderation.
  • Includes utilities for prompt templating, file loading, and text splitting.

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.

Health Check
Last commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
4 stars in the last 90 days

Explore Similar Projects

Starred by Jared Palmer Jared Palmer(Ex-VP of AI at Vercel; Founder of Turborepo; Author of Formik, TSDX), Jeff Hammerbacher Jeff Hammerbacher(Cofounder of Cloudera), and
1 more.

promptable by cfortuner

0%
2k
TS/JS library for building full-stack AI apps
created 2 years ago
updated 2 years ago
Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems).

LangBot by langbot-app

0.9%
13k
IM bot platform for the LLM era
created 2 years ago
updated 5 days ago
Feedback? Help us improve.