Interface ThinkingPromptRunnerOperations

  • All Implemented Interfaces:
    com.embabel.agent.api.common.PromptRunner.Thinking , com.embabel.common.core.thinking.ThinkingCapability

    @Deprecated(message = "Use PromptRunner.Thinking instead", replaceWith = @ReplaceWith(imports = {"com.embabel.agent.api.common.PromptRunner.Thinking"}, expression = "PromptRunner.Thinking")) 
    public interface ThinkingPromptRunnerOperations
     implements PromptRunner.Thinking
                        

    User-facing interface for executing prompts with thinking block extraction.

    This interface provides thinking-aware versions of standard prompt operations, returning both the converted results and the reasoning content that LLMs generated during their processing.

    Access this interface through the withThinking() extension:

    val result = promptRunner.withThinking().createObject("analyze this", Person::class.java)
    val person = result.result        // The converted Person object
    val thinking = result.thinkingBlocks // List of reasoning blocks

    This interface automatically extracts thinking content in various formats:

    • Tagged thinking: <think>reasoning here</think>, <analysis>content</analysis>

    • Prefix thinking: //THINKING: reasoning here

    • Untagged thinking: raw text content before JSON objects

    Unlike com.embabel.agent.api.common.PromptRunnerOperations which returns direct objects, all methods in this interface return ThinkingResponse wrappers that provide access to both results and reasoning.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      • Methods inherited from class com.embabel.agent.api.common.PromptRunner.Thinking

        createObject, createObject, createObject, createObjectIfPossible, createObjectIfPossible, createObjectIfPossible, evaluateCondition, generateText, generateText, respond, respond
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail