Hacker News

Subscribe to Hacker News feed
Hacker News RSS
Updated: 58 min 44 sec ago

Structured Outputs with DSPy

Mon, 04/01/2024 - 10:49am

Unfortunately, Large Language Models will not consistently follow the instructions that you give them. This is a massive problem when you are building AI systems that require a particular type of output from the previous step to feed into the next one! For example, imagine you are building a blog post writing system that first takes a question and retrieved context to output a list of topics. These topics have to be formatted in a particular way, such as a comma-separated list or a JSON of Topic objects, such that the system can continue writing the blog post! I am SUPER excited to share the 4th video in my DSPy series, diving into 3 solutions to structuring outputs in DSPy programs: (1) TypedPredictors, (2) DSPy Assertions, and (3) Custom Guardrails with the DSPy programming model! TypedPredictors follow the line of thinking around JSON mode and using Pydantic BaseModels to interface types and custom objects into a JSON template for LLMs. The output can then be validated to provide a more structured retry prompt to correct the output structure! DSPy Assertions are one of the core building blocks of DSPy, offering an interface to input a boolean-valued function and a retry prompt which is templated alongside the past output to retry the call to the LLM! Custom Guardrails with the DSPy Programming Model are one of the things I love the most about DSPy — we have unlimited flexibility to control these systems however we want. The video will also show you how to write custom guardrails and retry Signatures and discussion around using TypedPredictors for your Custom Guardrails and potentially feeding your Custom Guardrails into a DSPy Assertion. I had so much fun exploring this topic! Further seeing how well OpenAI’s GPT-4 and GPT-3.5-Turbo, Cohere’s Command R, and Mistral 7B hosted with Ollama perform with each Structured Output strategy! I also found monitoring structured output retries to be another fantastic application of Arize Phoenix! I hope you find the video useful! Video: https://www.youtube.com/watch?v=tVw3CwrN5-8 If interested, all the code examples for this DSPy series can be found here! - https://github.com/weaviate/recipes

Comments URL: https://news.ycombinator.com/item?id=39894707

Points: 1

# Comments: 0

Categories: Hacker News

Calendaring and Scheduling Developer's Wiki

Mon, 04/01/2024 - 10:46am

Article URL: https://devguide.calconnect.org/

Comments URL: https://news.ycombinator.com/item?id=39894682

Points: 1

# Comments: 0

Categories: Hacker News

Long-form factuality in large language models

Mon, 04/01/2024 - 10:45am

Article URL: https://arxiv.org/abs/2403.18802

Comments URL: https://news.ycombinator.com/item?id=39894677

Points: 1

# Comments: 0

Categories: Hacker News

Pages