Microsoft has unveiled Guidance, a new programming language specifically designed for large language models such as GPT-4 and Vicuna. This innovative tool enables users to have more effective and efficient control over language models compared to traditional prompts and chaining methods.
With Guidance, users can seamlessly interleave generations, prompts, and logic controls into a single continuous flow, offering a versatile approach to harnessing the power of language models. Microsoft emphasizes that simpler output structures like Chain of Thought (COT) and its variants, such as ART and Auto-COT, have proven to enhance language model performance. The emergence of more powerful LLMs, including GPT-4, opens up possibilities for even richer structures that are simpler and more cost-effective.
Guidance boasts several noteworthy features. It provides a user-friendly syntax based on Handlebars templates, allowing for simplicity and ease of use. Rich output structures, such as multiple generations, selection, conditional branching, and tool usage, are supported. Users can experience Playground-like streaming in Jupyter/VSCode Notebooks, enhancing the development experience. Smart seed-based generational caching is available, and the tool supports a chat model based on tolls, including ChatGPT. Furthermore, Guidance seamlessly integrates with the HuggingFace model, offering guidance acceleration, token healing, and regular expression pattern guides.
Microsoft’s ongoing work on language models also includes the announcement of Automatic Prompt Optimization (APO), a framework aimed at simplifying and optimizing LLM prompts. By introducing Guidance, Microsoft eliminates traditional programming burdens, enabling developers to transition more smoothly from concept to completion. The streamlined code-writing process empowers developers to create focused applications and significantly reduce product development time.
Looking ahead, Microsoft has plans to further enhance the Guidance language, focusing on refining productivity and reducing development costs. With continuous improvements, Guidance is set to revolutionize the way developers interact with and harness the potential of language models, opening up new avenues for innovation and application development.