Skip to content

Conversation

@kzu
Copy link
Member

@kzu kzu commented Jul 4, 2025

It's sometimes useful to be able to inspect (wether in tests or in production) the invocations that were performed by the model, including typed results.

The introduced ToolJsonOptions provide a mechanism to automatically inject a $type for result types so they can be later inspected by the FindCall<TResult> extension for ChatResponse.

To simplify this scenario, we also provide a ToolFactory that automatically sets things up for this scenario, additionally making the tool name default to the naming convention for tools, rather than the .NET method name.

It's sometimes useful to be able to inspect (wether in tests or in production) the invocations that were performed by the model, including typed results.

The introduced `ToolJsonOptions` provide a mechanism to automatically inject a `$type` for result types so they can be later inspected by the `FindCall<TResult>` extension for `ChatResponse`.

To simplify this scenario, we also provide a `ToolFactory` that automatically sets things up for this scenario, additionally making the tool name default to the naming convention for tools, rather than the .NET method name.
@kzu kzu added the enhancement New feature or request label Jul 4, 2025
@kzu kzu enabled auto-merge (rebase) July 4, 2025 05:17
@kzu
Copy link
Member Author

kzu commented Jul 4, 2025

10 skipped 10 skipped

🧪 Details on Ubuntu 24.04.2 LTS

from dotnet-retest v0.7.1 on .NET 8.0.17 with 💜 by @devlooped

@kzu kzu merged commit 0d9ff40 into main Jul 4, 2025
7 checks passed
@kzu kzu deleted the dev/ToolCalls branch July 4, 2025 05:18
@devlooped devlooped locked and limited conversation to collaborators Aug 4, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants