@@ -12,102 +12,79 @@ namespace Together.SemanticKernel.Extensions;
1212
1313public static class KernelBuilderExtensions
1414{
15- public static IKernelBuilder AddTogetherChatCompletion (
16- this IKernelBuilder builder ,
17- string model ,
18- string apiKey ,
19- string ? endpoint = null ,
20- HttpClient ? httpClient = null ,
21- string ? serviceId = null )
15+ public static IKernelBuilder AddTogetherChatCompletion ( this IKernelBuilder builder , string model , string apiKey , string ? endpoint = null ,
16+ HttpClient ? httpClient = null , string ? serviceId = null )
2217 {
2318 ArgumentException . ThrowIfNullOrWhiteSpace ( model ) ;
2419
2520 if ( string . IsNullOrEmpty ( serviceId ) )
2621 {
2722 builder . Services . AddSingleton < IChatCompletionService > ( serviceProvider =>
28- new TogetherChatCompletionService (
29- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
30- model , serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
23+ new TogetherChatCompletionService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) , model ,
24+ serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
3125
3226 builder . Services . AddSingleton < ITextGenerationService > ( serviceProvider =>
33- new TogetherChatCompletionService (
34- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
35- model , serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
27+ new TogetherChatCompletionService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) , model ,
28+ serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
3629 }
3730 else
3831 {
39- builder . Services . AddKeyedSingleton < IChatCompletionService > ( serviceId , ( serviceProvider , _ ) =>
40- new TogetherChatCompletionService (
41- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
42- model , serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
32+ builder . Services . AddKeyedSingleton < IChatCompletionService > ( serviceId ,
33+ ( serviceProvider , _ ) =>
34+ new TogetherChatCompletionService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) , model ,
35+ serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
4336
44- builder . Services . AddKeyedSingleton < ITextGenerationService > ( serviceId , ( serviceProvider , _ ) =>
45- new TogetherChatCompletionService (
46- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
47- model , serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
37+ builder . Services . AddKeyedSingleton < ITextGenerationService > ( serviceId ,
38+ ( serviceProvider , _ ) =>
39+ new TogetherChatCompletionService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) , model ,
40+ serviceProvider . GetService < ILogger < TogetherChatCompletionService > > ( ) ) ) ;
4841 }
4942
5043
51-
5244 return builder ;
5345 }
5446
5547 [ Experimental ( "SKEXP0001" ) ]
56- public static IKernelBuilder AddTogetherTextEmbeddingGeneration (
57- this IKernelBuilder builder ,
58- string model ,
59- string apiKey ,
60- string ? endpoint = null ,
61- HttpClient ? httpClient = null ,
62- string ? serviceId = null )
48+ public static IKernelBuilder AddTogetherTextEmbeddingGeneration ( this IKernelBuilder builder , string model , string apiKey , string ? endpoint = null ,
49+ HttpClient ? httpClient = null , string ? serviceId = null )
6350 {
6451 ArgumentException . ThrowIfNullOrWhiteSpace ( model ) ;
6552
6653 if ( string . IsNullOrEmpty ( serviceId ) )
6754 {
6855 builder . Services . AddSingleton < ITextEmbeddingGenerationService > ( serviceProvider =>
69- new TogetherTextEmbeddingGenerationService (
70- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
71- model ) ) ;
56+ new TogetherTextEmbeddingGenerationService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) , model ) ) ;
7257 }
7358 else
74- {
75- builder . Services . AddKeyedSingleton < ITextEmbeddingGenerationService > ( serviceId , ( serviceProvider , _ ) =>
76- new TogetherTextEmbeddingGenerationService (
77- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
78- model ) ) ;
59+ {
60+ builder . Services . AddKeyedSingleton < ITextEmbeddingGenerationService > ( serviceId ,
61+ ( serviceProvider , _ ) =>
62+ new TogetherTextEmbeddingGenerationService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
63+ model ) ) ;
7964 }
80-
65+
8166
8267 return builder ;
8368 }
8469
8570 [ Experimental ( "SKEXP0001" ) ]
86- public static IKernelBuilder AddTogetherTextToImage (
87- this IKernelBuilder builder ,
88- string model ,
89- string apiKey ,
90- string ? endpoint = null ,
91- HttpClient ? httpClient = null ,
92- string ? serviceId = null )
71+ public static IKernelBuilder AddTogetherTextToImage ( this IKernelBuilder builder , string model , string apiKey , string ? endpoint = null ,
72+ HttpClient ? httpClient = null , string ? serviceId = null )
9373 {
9474 ArgumentException . ThrowIfNullOrWhiteSpace ( model ) ;
9575
9676 if ( string . IsNullOrEmpty ( serviceId ) )
9777 {
9878 builder . Services . AddSingleton < ITextToImageService > ( serviceProvider =>
99- new TogetherTextToImageService (
100- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
101- model ) ) ;
79+ new TogetherTextToImageService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) , model ) ) ;
10280 }
10381 else
10482 {
105- builder . Services . AddKeyedSingleton < ITextToImageService > ( serviceId , ( serviceProvider , _ ) =>
106- new TogetherTextToImageService (
107- new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) ,
108- model ) ) ;
83+ builder . Services . AddKeyedSingleton < ITextToImageService > ( serviceId ,
84+ ( serviceProvider , _ ) =>
85+ new TogetherTextToImageService ( new TogetherClient ( apiKey , GetHttpClient ( httpClient , serviceProvider ) , endpoint ) , model ) ) ;
10986 }
110-
87+
11188 return builder ;
11289 }
11390
0 commit comments