Udostępnij za pośrednictwem


Tworzenie i użycie niestandardowego pakietu narzędzi

Podczas opracowywania przepływów można używać nie tylko wbudowanych narzędzi dostarczanych przez przepływ monitów, ale także tworzyć własne niestandardowe narzędzie. W tym dokumencie przeprowadzimy Cię przez proces tworzenia własnego pakietu narzędzi, oferując szczegółowe kroki i porady dotyczące korzystania z niestandardowego pakietu narzędzi.

Po pomyślnym zakończeniu instalacji niestandardowy "narzędzie" może pojawić się na liście narzędzi: Zrzut ekranu przedstawiający narzędzia niestandardowe na liście narzędzi interfejsu użytkownika.

Tworzenie własnego pakietu narzędzi

Pakiet narzędzi powinien być pakietem języka Python. Aby opracować narzędzie niestandardowe, wykonaj kroki Tworzenia własnego pakietu narzędzi i kompilowania i udostępniania pakietu narzędzi w temacie Tworzenie i używanie pakietu narzędzi. Bardziej zaawansowane wskazówki dotyczące programowania można znaleźć w temacie How to develop a tool (Jak opracowywać narzędzie).

Przygotowywanie sesji obliczeniowej

Aby dodać narzędzie niestandardowe do listy narzędzi do użycia, należy przygotować sesję obliczeniową. W tym miejscu jako przykład użyjemy pakietu my-tools-package .

Podczas korzystania z sesji obliczeniowej można łatwo zainstalować publicznie wydany pakiet, dodając niestandardową nazwę pakietu narzędzi do requirements.txt pliku w folderze przepływu. Następnie, aby rozpocząć instalację, wybierz przycisk "Zapisz i zainstaluj". Po zakończeniu możesz wyświetlić niestandardowe narzędzia wyświetlane na liście narzędzi. Aby dowiedzieć się więcej, zobacz Jak zarządzać sesją obliczeniową. Zrzut ekranu przedstawiający sposób instalowania pakietów w sesji obliczeniowej.

Inna metoda ma zastosowanie nie tylko dla publicznie wydanych pakietów, ale także lokalnych lub prywatnych pakietów kanałów informacyjnych. Najpierw należy utworzyć obraz, wykonując dwa kroki w celu dostosowania obrazu podstawowego do sesji obliczeniowej, a następnie zmienić obraz podstawowy dla sesji obliczeniowej.

Testowanie z interfejsu użytkownika przepływu monitu

  1. Utwórz standardowy przepływ.

  2. Uruchom sesję obliczeniową. Zrzut ekranu przedstawiający przepływ w usłudze Azure Machine Learning Studio rozpoczynającej sesję obliczeniową.

  3. Dodaj narzędzia. Zrzut ekranu przedstawiający przepływ w usłudze Azure Machine Learning Studio z listą rozwijaną większej liczby narzędzi.

  4. Zmień przepływ na podstawie wymagań i przebiegu przepływu. Zrzut ekranu przedstawiający przepływ w usłudze Azure Machine Learning Studio przedstawiający dodawanie narzędzia.

Często zadawane pytania

Jak zainstalować pakiet narzędzi niestandardowych w rozszerzeniu programu VS Code?

  1. Przepływ monitu o instalację dla rozszerzenia programu VS Code Zrzut ekranu przedstawiający rozszerzenie programu VS Code przepływu monitu.

  2. Przejdź do terminalu i zainstaluj pakiet narzędzi w środowisku conda rozszerzenia. Załóżmy, że nazwa env conda to prompt-flow.

    (local_test) PS D:\projects\promptflow\tool-package-quickstart> conda activate prompt-flow
    (prompt-flow) PS D:\projects\promptflow\tool-package-quickstart> pip install my-tools-package==0.0.1
    
  3. Przejdź do rozszerzenia i otwórz jeden folder przepływu. Wybierz pozycję "flow.dag.yaml" i wyświetl podgląd przepływu. Następnie wybierz + przycisk i możesz wyświetlić narzędzia. Jeśli nie widzisz narzędzia na liście, musisz ponownie załadować okna , aby wyczyścić poprzednią pamięć podręczną.

    Zrzut ekranu programu VS Code przedstawiający narzędzia.

Dlaczego moje narzędzie niestandardowe nie jest wyświetlane w interfejsie użytkownika?

Pakiet narzędzi można przetestować przy użyciu następującego skryptu, aby upewnić się, że pliki YAML narzędzia zostały spakowane i prawidłowo skonfigurowano punkt wejścia narzędzia pakietu.

  1. Przed wykonaniem tego skryptu upewnij się, że pakiet narzędzi został zainstalowany w środowisku conda.

  2. Utwórz plik python w dowolnym miejscu i skopiuj do niego następującą zawartość.

    def test():
        # `collect_package_tools` gathers all tools info using the `package-tools` entry point. This ensures that your package is correctly packed and your tools are accurately collected. 
        from promptflow.core.tools_manager import collect_package_tools
        tools = collect_package_tools()
        print(tools)
    if __name__ == "__main__":
        test()
    
  3. Uruchom ten skrypt w środowisku conda. Zwraca metadane wszystkich narzędzi zainstalowanych w środowisku lokalnym i należy sprawdzić, czy narzędzia są wymienione na liście.

Dlaczego nie mogę przekazać pakietu do interfejsu PyPI?

  • Upewnij się, że wprowadzona nazwa użytkownika i hasło konta PyPI są dokładne.
  • Jeśli wystąpi błąd 403 Forbidden Error, prawdopodobnie jest to spowodowane konfliktem nazewnictwa z istniejącym pakietem. Musisz wybrać inną nazwę. Nazwy pakietów muszą być unikatowe w interfejsie PyPI, aby uniknąć nieporozumień i konfliktów między użytkownikami. Przed utworzeniem nowego pakietu zaleca się przeszukiwanie PyPI (https://pypi.org/), aby sprawdzić, czy wybrana nazwa nie jest jeszcze zajęta. Jeśli wybrana nazwa jest niedostępna, rozważ wybranie alternatywnej nazwy lub odmiany, która wyraźnie odróżnia pakiet od istniejącego.

Następne kroki