Skip to content

Conversation

@sicoyle
Copy link
Contributor

@sicoyle sicoyle commented Aug 14, 2025

Thank you for helping make the Dapr documentation better!

Please follow this checklist before submitting:

  • Commits are signed with Developer Certificate of Origin (DCO - learn more)
  • Read the contribution guide
  • Commands include options for Linux, MacOS, and Windows within codetabs
  • New file and folder names are globally unique
  • Page references use shortcodes instead of markdown or URL links
  • Images use HTML style and have alternative text
  • Places where multiple code/command options are given have codetabs

In addition, please fill out the following to help reviewers understand this pull request:

Description

Add tool calling support in teh conversation api docs. I did not update the "How to converse" page as I need the rest of the SDKs updated to reference to bring in python & js code snippets and the other languages sdks updated with tool call support. So the corresponding updates here will be in a separate PR after SDKs are updated: https://docs.dapr.io/developing-applications/building-blocks/conversation/howto-conversation-layer/

Issue reference

#4687

@sicoyle sicoyle requested review from a team as code owners August 14, 2025 20:17
Copy link
Member

@msfussell msfussell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sicoyle Some comments

| `temperature` | A float value to control the temperature of the model. Used to optimize for consistency and creativity. Optional |
| `parameters` | Parameters for all custom fields. Optional |
| `metadata` | [Metadata](#metadata) passed to conversation components. Optional |
| `scrub_pii` | A boolean value to enable obfuscation of sensitive information returning from the LLM. Optional |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This has changed and anyway should not have an underscore.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

prompt caching is done on a component perspective and is set through the component metadata fields, not from an api perspective in the incoming request to the conversation api so the cacheTTL field should be removed from what i can tell. It was never a setting from an api POV, only from a component POV. I addressed the camelCase correction here for scrubPii.

@cicoyle cicoyle added this to the 1.16 milestone Aug 20, 2025

The `tool_choice` parameter controls how the model uses available tools:

- **`""`**: The model will not call any tool and instead generates a message (default when no tools are present)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This part is confusing: (default when no tools are present)

When no tools are present, would it behave like "auto" , or it will behave like ""

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it is unset if no tools are present, so hopefully my latest change makes this clearer.

@msfussell
Copy link
Member

@sicoyle - PTAL at the comments

Signed-off-by: Samantha Coyle <[email protected]>
@sicoyle
Copy link
Contributor Author

sicoyle commented Sep 9, 2025

@sicoyle - PTAL at the comments

Ready for ya @msfussell 🙏

Copy link
Member

@msfussell msfussell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sicoyle Looking good. One question - In the previous version we said there was a cacheTTL field that can be set. How is the prompt caching set?

Copy link
Contributor

@marcduiker marcduiker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@sicoyle
Copy link
Contributor Author

sicoyle commented Sep 10, 2025

Looking good. One question - In the previous version we said there was a cacheTTL field that can be set. How is the prompt caching set?

See here more context on this: #4769 (comment)

The current reference as this being a parameter to pass into the API should be removed, as it is not an API field to pass in. Prompt caching is done on a component perspective and is set through the component metadata fields, not from an api perspective in the incoming request to the conversation api. It was never a setting from an api POV, only from a component POV.

@msfussell msfussell merged commit 62f930f into dapr:v1.16 Sep 10, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants