Open ResoluteStoic opened 1 year ago
Currently it is not in the roadmap, but can you give specific use cases where it can help
Challenge with these standards is that they are in flux currently as technical contours are getting defined, so don't want to add it as a core library feature till they mature
Given some time has passed I would also highly recommend LMQL which is actively developed and quite mature.
Use case / reason for these libraries In simple terms, rather than getting a long unstructured text from an LLM, these libraries basically allow an LLM to only "fill out" elements of a given template and based on rules. On a practical level this would allow them to for instance output proper JSON files, even when the underlying LLM is not that smart. A particularly helpful feature I personally use often in LMQL is the ability to constrain a specific LLM output field to a set of given options (which would immensely help tool selection).
TLDR: These libraries allow for much more stable and predictable LLM outputs, even when the used model is not that smart. This is great for using small local models.
The potential benefits are listed below:
Introductory research paper: https://arxiv.org/pdf/2212.06094.pdf Website: https://lmql.ai/ Docs: https://docs.lmql.ai/ Example: https://github.com/rumpfmax/Multi-GPT/tree/master/multigpt/lmql_utils