Skip to content

A new package that transforms unstructured user input about project management needs into a structured Trello-like board setup. Users describe their tasks, workflows, and preferences in plain text, an

Notifications You must be signed in to change notification settings

chigwell/nlboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

nlboard

PyPI version License: MIT Downloads LinkedIn

nlboard is a Python package designed to transform unstructured user input about project management needs into a structured Trello-like board configuration. By leveraging large language models, nlboard interprets plain text descriptions of tasks, workflows, and preferences and outputs a well-organized Trello board setting with lists, cards, and labels. This enables users to quickly set up a modern project management interface tailored to their specific requirements without manual configuration.

Installation

Install via pip:

pip install nlboard

Usage

Here's a basic example of how to use nlboard with the default LLM:

from nlboard import nlboard

user_input = "I need a board for managing my software project with to-do, in-progress, and done lists. Add cards for feature development, bug fixes, and documentation. Use labels for priority levels."

response = nlboard(user_input)
print(response)

Custom LLM Support

nlboard defaults to using the ChatLLM7 from langchain_llm7, but you can pass your own language model instance to customize the setup.

Using different language models

You can easily pass your preferred LLM, such as OpenAI, Anthropic, or Google Generative AI, as shown below:

from langchain_openai import ChatOpenAI
from nlboard import nlboard

llm = ChatOpenAI()
response = nlboard(user_input, llm=llm)

Similarly, for other LLMs:

from langchain_anthropic import ChatAnthropic

llm = ChatAnthropic()
response = nlboard(user_input, llm=llm)
from langchain_google_genai import ChatGoogleGenerativeAI

llm = ChatGoogleGenerativeAI()
response = nlboard(user_input, llm=llm)

API Key Configuration

The default use of LLM7 is suitable for most cases, especially with its free tier. To improve rate limits, set your API key:

  • Via environment variable:
export LLM7_API_KEY='your-api-key'
  • Or pass directly in code:
response = nlboard(user_input, api_key='your-api-key')

You can obtain a free API key at https://token.llm7.io/.

Notes

Author

Eugene Evstafev
Email: hi@euegne.plus
GitHub: chigwell

Issues

For bugs or feature requests, create an issue on the GitHub repository.