From 8cdf875e824556cacc80cf5332e94ceca5cc461a Mon Sep 17 00:00:00 2001 From: zachary62 Date: Thu, 26 Dec 2024 19:41:17 +0000 Subject: [PATCH] update readme --- README.md | 32 +++++++++++++++++++++++++++++++- docs/prompt | 1 + setup.py | 11 +++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 docs/prompt create mode 100644 setup.py diff --git a/README.md b/README.md index b563302..af280d1 100644 --- a/README.md +++ b/README.md @@ -1 +1,31 @@ -# miniLLMFlow +

miniLLMFlow

+ +![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg) + +Minimalist LLM framework in [100 lines](minillmflow/__init__.py). Express popular LLM paradigms like agents, task decomposition, chain of thought, RAG, and more. + +- Install via ```pip install minillmflow```. Or just copy the [source codes](minillmflow/__init__.py) (it's only 100 lines) +- We **strongly recommened** using LLMs (e.g., Claude, ChatGPT, Cursor) to build LLM applications with [this prompt](minillmflow/docs/prompt) + +## Why miniLLMFlow? + +The future of programming will be heavily LLM-assited, and LLMs: + +1. **👍 Excel at Feature Implementation**: +Give proper context/docs, they know how to use APIs, tools, text chunking, prompt wrapping, etc. +These shouldn't be part of an LLM framework, as they're hard to maintain, update, and optimize. + +2. **👎 Suck at Paradigm Design**: +Paradigms like MapReduce, DAG workflows, and recent agents are powerful for reasoning about problems. +However, designing elegant paradigms is challenging, and LLMs tend to write redundant code. + +Can we build a framework that: +(1) removes redunant feature implementations, +(2) but keep core paradigms for LLMs to program against? + +Turns out that we just need 100 lines of codes. + +
+ +
+ diff --git a/docs/prompt b/docs/prompt new file mode 100644 index 0000000..30404ce --- /dev/null +++ b/docs/prompt @@ -0,0 +1 @@ +TODO \ No newline at end of file diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..97caa74 --- /dev/null +++ b/setup.py @@ -0,0 +1,11 @@ +from setuptools import setup, find_packages + +setup( + name="minillmflow", + version="0.0.0", + packages=find_packages(), + author="Zachary Huang", + author_email="zh2408@columbia.edu", + description="A Minimalist Framework for LLM Workflows in 100 Lines of Code", + url="https://github.com/zachary62/miniLLMFlow", +) \ No newline at end of file