From b849715519e4acb028cb8fc4d583e46cd919d5b3 Mon Sep 17 00:00:00 2001 From: Tomasz Osmanowski Date: Sun, 12 Jan 2025 19:07:57 +0100 Subject: [PATCH 1/3] Update artificial-intelligence.md - fixed refs causing builds to fail There are problems with three xref elements that cause build to fail --- docs/core/extensions/artificial-intelligence.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/core/extensions/artificial-intelligence.md b/docs/core/extensions/artificial-intelligence.md index e346df29d84ca..0c2d42ec11573 100644 --- a/docs/core/extensions/artificial-intelligence.md +++ b/docs/core/extensions/artificial-intelligence.md @@ -192,9 +192,9 @@ The consumer can then easily use this in their pipeline, for example: This example demonstrates [hosted scenario](generic-host.md), where the consumer relies on [dependency injection](dependency-injection.md) to provide the `RateLimiter` instance. The preceding extension methods demonstrate using a `Use` method on . The `ChatClientBuilder` also provides overloads that make it easier to write such delegating handlers. -- -- -- +- + + For example, in the earlier `RateLimitingChatClient` example, the overrides of `CompleteAsync` and `CompleteStreamingAsync` only need to do work before and after delegating to the next client in the pipeline. To achieve the same thing without writing a custom class, you can use an overload of `Use` that accepts a delegate that's used for both `CompleteAsync` and `CompleteStreamingAsync`, reducing the boilerplate required: From cbe91fac6afb2c0b3b86f2f62d20b0fd82c36b20 Mon Sep 17 00:00:00 2001 From: Tomasz Osmanowski Date: Sun, 12 Jan 2025 19:49:34 +0100 Subject: [PATCH 2/3] Update artificial-intelligence.md - fixed xrefs --- docs/core/extensions/artificial-intelligence.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/core/extensions/artificial-intelligence.md b/docs/core/extensions/artificial-intelligence.md index 0c2d42ec11573..30d229d1ca8f3 100644 --- a/docs/core/extensions/artificial-intelligence.md +++ b/docs/core/extensions/artificial-intelligence.md @@ -192,9 +192,10 @@ The consumer can then easily use this in their pipeline, for example: This example demonstrates [hosted scenario](generic-host.md), where the consumer relies on [dependency injection](dependency-injection.md) to provide the `RateLimiter` instance. The preceding extension methods demonstrate using a `Use` method on . The `ChatClientBuilder` also provides overloads that make it easier to write such delegating handlers. -- - - +- +- +- +- For example, in the earlier `RateLimitingChatClient` example, the overrides of `CompleteAsync` and `CompleteStreamingAsync` only need to do work before and after delegating to the next client in the pipeline. To achieve the same thing without writing a custom class, you can use an overload of `Use` that accepts a delegate that's used for both `CompleteAsync` and `CompleteStreamingAsync`, reducing the boilerplate required: From e209ac3d4659ec7fa4b91ed6b24ec11d99115f9c Mon Sep 17 00:00:00 2001 From: Tomasz Osmanowski Date: Sun, 12 Jan 2025 19:56:10 +0100 Subject: [PATCH 3/3] Update artificial-intelligence.md - fixed xrefs --- docs/core/extensions/artificial-intelligence.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/extensions/artificial-intelligence.md b/docs/core/extensions/artificial-intelligence.md index 30d229d1ca8f3..9943ab1c9775b 100644 --- a/docs/core/extensions/artificial-intelligence.md +++ b/docs/core/extensions/artificial-intelligence.md @@ -194,7 +194,7 @@ This example demonstrates [hosted scenario](generic-host.md), where the consumer - - -- +- - For example, in the earlier `RateLimitingChatClient` example, the overrides of `CompleteAsync` and `CompleteStreamingAsync` only need to do work before and after delegating to the next client in the pipeline. To achieve the same thing without writing a custom class, you can use an overload of `Use` that accepts a delegate that's used for both `CompleteAsync` and `CompleteStreamingAsync`, reducing the boilerplate required: