Udostępnij za pośrednictwem


Aktualizacje integracji Ollama

W wersji .NET.NET Aspire Community Toolkit 9.0 integracji Ollama wprowadzono istotne zmiany. Te aktualizacje zwiększają funkcjonalność i lepiej integrują się z projektem interfejsu API .NET.NET Aspire.

Wersja wprowadzona

.NET .NET Aspire Community Toolkit 9.0 (ogólna dostępność)

Poprzednie zachowanie

Integracja rozwiązania Ollama obejmuje zarówno hostowanie, jak i aktualizacje integracji client. Oba elementy znajdują się w poniższych sekcjach.

Hosting Ollama

Zasób hostingu Ollama musiał zostać podany jako odwołanie do innych zasobów i dostarczałby informacje o modelu jako zestaw zmiennych środowiskowych. Ciąg połączenia był jedynie punktem końcowym HTTP, a nie prawdziwym "ciągiem połączenia".

OllamaSharp client

Obsługuje bibliotekę w wersji 3 i nie obsługuje interfejsów Microsoft.Extensions.AI (M.E.AI).

Nowe zachowanie

Nowe zachowanie obejmuje następujące aktualizacje.

Modele jako zasoby

We wcześniejszych wersjach modele były dodawane do zasobu Ollama i trzeba było przekazać ten zasób jako odniesienie. To podejście wymaga obejść, aby ustawić i odnaleźć model domyślny. W wersji 9.0 wprowadziliśmy OllamaModelResource. Ten zasób można przekazać jako odwołanie i dostarcza klientom informacje o połączeniu, którego modelu użyć.

Nowy format parametrów połączenia

Pierwotnie "parametry połączenia" z zasobu Ollama były tylko punktem końcowym HTTP, ale aby lepiej obsługiwać model jako zasób, zasoby tworzą "rzeczywiste" parametry połączenia Endpoint=<...>;Model=<...>. Część Model jest uwzględniana tylko wtedy, gdy przekazujesz OllamaModelResource.

OllamaSharp 4 i Microsoft.Extensions.AI

OllamaSharp został zaktualizowany do nowej wersji głównej i obsługuje teraz interfejsy z Microsoft.Extensions.AI. Możesz zarejestrować IOllamaApiClient (natywny clientOllamaSharp) lub z M.E.AI IChatClient i IEmbeddingGenerator<TInput,TEmbedding> (w zależności od typu modelu). Użycie tych nowych interfejsów sprawia, że kod jest bardziej przenośny w opcjach LLM/SLM.

Wycofywanie i usunięcia interfejsów API

Podczas całego procesu refaktoryzacji niektóre interfejsy API są oznaczane jako przestarzałe lub usuwane.

Rodzaj zmiany łamiącej zgodność

Ta zmiana jest niezgodną binarną i zmianą zachowania.

Przyczyna zmiany

Zmiany mają na celu zwiększenie funkcjonalności biblioteki i lepszą integrację z projektem interfejsu API .NET.NET Aspire.

Zaktualizuj do wersji .NET.NET Aspire 9.0.

Interfejsy API, których dotyczy problem