microsoft/genaiops-promptflow-template

GenAIOps with Prompt Flow is a "GenAIOps template and guidance" to help you build LLM-infused apps using Prompt Flow. It offers a range of features including Centralized Code Hosting, Lifecycle Management, Variant and Hyperparameter Experimentation, A/B Deployment, reporting for all runs and experiments and so on.

What it solves

이 프로젝트는 Prompt flow를 사용한 LLMOps(Large Language Model Operations) 구현을 위한 표준화된 템플릿과 가이드를 제공합니다. 로컬 실험 및 프롬프트 엔지니어링부터 프로덕션 배포 및 모니터링까지, LLM이 적용된 애플리케이션의 엔드‑투‑엔드 라이프사이클 관리의 어려움을 해결합니다. 특히, 고유 요구사항을 가진 여러 플로우를 동시에 다룰 때 유용합니다.

How it works

템플릿은 Prompt flow 워크플로우를 개발·평가·배포하기 위한 구조화된 프레임워크를 구축합니다. YAML 기반(DAG), Python 함수 기반, Python 클래스 기반의 세 가지 플로우 유형을 지원합니다. 로컬 실행, Azure AI Studio, Azure Machine Learning을 지원하여 환경 간 전환을 자동화합니다. 시스템은 GitHub Actions, Azure DevOps, Jenkins와 같은 CI/CD 도구와 통합되어 외부 루프 배포 프로세스를 오케스트레이션하고, 변형 및 하이퍼파라미터 테스트, 상세 메트릭 보고 등 내부 루프 실험 도구도 제공합니다.

Who it’s for

LLM이 적용된 애플리케이션을 구축하는 엔지니어, 데이터 사이언티스트, 개발자를 위한 것입니다. 프롬프트 엔지니어링과 운영화를 체계적이고 확장 가능한 방식으로 수행하고자 하는 분들에게 적합합니다.

Highlights

  • Multi-Flow Management: 하나의 리포지토리에서 여러 플로우를 중앙 집중식으로 관리하며, 각 플로우는 독립적인 라이프사이클을 가집니다.
  • C’D Integration: GitHub, Azure DevOps, Jenkins에 대한 내장 지원 및 오케스트레이션.
  • Flexible Deployment: 플로우를 Kubernetes, Azure Web Apps, AzureML/AI Studio 관리 컴퓨트에 배포할 수 있으며, A/B 배포 기능을 포함합니다.
  • Experimentation Tools: 변형 및 하이퍼파라미터 실험을 지원하고, HTML/CSV 형태의 포괄적인 보고서를 제공합니다.
  • DataOps Integration: 실험 및 평가를 위한 데이터셋 준비를 엄격히 관리하기 위해 별도의 데이터 파이프라인을 사용합니다.
  • Hybrid Execution: 설정에 따라 로컬 또는 Azure 클라우드에서 플로우를 실행할 수 있습니다.