작성자: Hanlin Sun, Toussaint Webb , Naseer Ahamed
데이터의 민주화는 인사이트에 쉽고 안전하게 액세스할 수 있도록 하는 것에서 시작됩니다. Databricks Genie를 사용하면 이제 Teams, Slack, Confluence 또는 사용자 지정 웹 앱과 같이 이미 사용하고 있는 도구에서 데이터와 직접 대화할 수 있습니다. 네이티브 Copilot Studio/Foundry 통합을 사용하든 Genie Conversation APIs/SDK로 구축하든, 이제 Genie는 자연어 분석을 일상적인 워크플로에 적용할 수 있습니다. 내부적으로는 OAuth를 적용하여 각 사용자를 안전하게 인증하고 데이터 액세스 권한을 적용할 수 있습니다.
이전에는 The AA 및 Casas Bahia 와 같은 고객이 Microsoft Teams와 내부 앱에 자체적으로 Genie 통합을 구축했습니다. 이제 당사의 강력한 확장성 제품군을 통해 이러한 경험을 더 쉽고, 더 빠르며, 더 확장 가능하게 만들 수 있습니다.
이 블로그에서는 조직 전체에 엔터프라이즈 OAuth로 Genie를 배포하는 두 가지 일반적인 방법을 살펴보겠습니다.
그룹 대화 중에는 임시 데이터 관련 질문이 수시로 발생합니다. Databricks Genie의 기본 Copilot Studio 통합을 통해 사용자는 이제 Microsoft Teams에서 직접 질문이 발생하는 즉시 답변을 얻을 수 있습니다. 이 통합을 활용하려면 아래 단계를 따르세요.
Microsoft Teams에서 Genie를 활성화 하는 첫 번째 단계는 Azure Databricks를 Power Platform에 연결하는 것입니다(설명서). Microsoft Power Apps에서 '연결'을 클릭하고 'Azure Databricks' 또는 AWS/GCP를 사용하는 경우 'Databricks'를 선택합니다. 다음 필드를 구성하세요.
다음으로, Genie 스페이스를 Copilot Studio에 연결합니다(설명서). 저희 통합은 모든 API 및 MCP 로직을 처리하므로 몇 번의 클릭만으로 연결할 수 있습니다.
Copilot Studio에서 에이전트를 클릭합니다. Genie 스페이스용 새 독립형 에이전트를 빌드하려면 "빈 에이전트 만들기"를 선택하세요. Genie를 기존 에이전트 프레임워크에 통합하려는 경우, 기존 Copilot Studio 에이전트를 선택하여 Genie space를 추가할 수도 있습니다.

새 에이전트에서 'Tools'를 클릭한 다음 'Add a tool'을 클릭합니다. MCP 섹션에서 Azure Databricks Genie(또는 AWS/GCP용 Databricks Genie)를 선택합니다.

이제 원하는 Genie 스페이스를 선택하고 연결 세부 정보를 구성할 수 있습니다.

"End user credentials"를 선택하면 각 사용자는 자신의 계정으로 Databricks에 로그인해야 합니다. 이 과정을 더 간단하게 만들려면 Microsoft 설명서에 설명된 대로 연결 parameter를 공유하여 사용자가 직접 해당 정보를 제공할 필요가 없도록 하는 것이 좋습니다. 실제로 이는 서버 Hostname과 HTTP 경로를 제공하는 것을 의미하며, 이를 통해 사용자는 Copilot Studio 에이전트의 Genie 스페이스에 연결된 정확한 Databricks 작업 공간에 인증할 수 있습니다.


이제 Genie 스페이스에 연결된 Copilot Studio 에이전트가 준비되었으므로 Teams에 게시할 수 있습니다.


모두 준비되었습니다! 이제 Genie가 Microsoft Teams에서 실시간으로 운영되어 질문이 발생하는 즉시 거버넌스가 적용된 데이터 인사이트를 제공합니다.

최종 사용자가 Microsoft Teams에서 Genie를 활용하는 방법을 보려면 고객 사례를 참조하세요.
많은 조직에서는 사용자가 이미 사용 중인 도구에서 질문할 수 있도록 Genie를 맞춤형 웹 앱에 직접 포함하고자 합니다. 예를 들어 매장 관리자는 기존 판매 단말기에서 직접 재 고에 관해 즉석 질문을 할 수 있습니다. Genie Conversation API와 Databricks OAuth를 통해 이제 이것이 가능합니다.
웹 앱과 Genie 간의 통합을 구축하기 전에 사용할 OAuth 패턴(사용자-머신(U2M), 머신-머신(M2M) 또는 On-Behalf-Of(OBO) 모델)을 결정하는 것이 중요합니다. 각 접근 방식은 서로 다른 유형의 애플리케이션 사용 사례에 해당합니다.
이 블로그의 나머지 부분에서는 Databricks의 기본 제공 OAuth 지원을 사용하는 Genie 통합의 첫 번째 패턴인 OAuth U2M 흐름 에 대해 중점적으로 살펴보겠습니다.
참고: Databricks는 OAuth 토큰 페더레이션도 지원합니다. 이를 사용하여 자체 ID 공급자가 발급한 토큰을 가져와 위에서 설명한 방법과 결합하여 Genie에 액세스할 수 있습니다.

사용자 지정 웹 앱을 Genie에 안전하게 연결하려면 먼저 Databricks 계정에 등록하세요. 이 단계를 통해 Databricks는 이후 단계에서 앱에 대한 사용자 범위 토큰을 안전하게 발급할 수 있습니다. 자세히 알아보려면 제품 설명서 를 확인하세요.
Databricks 계정 콘솔에서 새 OAuth 연결을 추가하고 다음을 구성하세요.

이 연결을 저장하면 Databricks가 다음을 생성합니다.
백엔드에 이 자격 증명 을 안전하게 저장하세요. 이 자격 증명은 승인 코드를 액세스 토큰 으로 교환하고 Genie Conversation API에 대한 호출을 인증하는 데 필요합니다.
다음 단계는 앱이 최종 사용자를 Databricks로 안내하여, 사용자가 로그인하고 앱이 자신을 대신하여 Genie와 통신하도록 승인 할 수 있게 하는 것입니다. 로그인 및 승인이 완료되면 Databricks는 수명이 짧은 인증 코드와 함께 사용자를 앱으로 리디렉션합니다.
이 인증 코드는 사용자가 Databricks에 성공적으로 인증했고, 앱이 요청한 액세스를 승인했다는 증거입니다. 앱의 백엔드는 다음 단계에서 이 승인 코드를 사용하여 액세스 토큰을 얻습니다.
시작하려면 웹 애플리케이션을 보호하기 위해 각 로그인에 대한 PKCE 및 상태 값을 생성합니다.
다음으로 프런트엔드에서 Databricks OAuth 엔드포인트를 사용하여 승인 URL을 생성해야 합니다.
사용자가 애플리케이션을 식별하도록 하려면 다음 양식 매개변수를 포함하세요.
사용자가 Databricks 계정에 로그인하면 쿼리 매개변수와 함께 redirect_url로 리디렉션됩니다: https://<redirect_url>/oauth/callback?code=<authorization_code>&state=<state>
콜백 핸들러는 쿼리 문자열에서 authorization_code 와 state 를 읽어야 합니다. state 값이 쿠키 또는 웹 세션에 저장된 값과 일치하는지 확인합니다. 일치하지 않으면 authorization_code를 폐기합니다. 이제 애플리케이션은 반환된 authorization_code를 액세스 토큰으로 교환할 수 있습니다.
이전 단계에서 검색된 승인 코드는 API를 직접 호출하는 데 사용할 수 없으며, Genie와 안전하게 통신하는 데 필요한 백엔드의 액세스 토큰으로 교환해야 합니다. 자세한 내용은 제품 설명서를 참조하세요).
다음은 인증 코드를 액세스 토큰 및 새로 고침 토큰으로 교환하는 Python 예제입니다(자세한 내용은 OAuth SDK 설명서를 참조하세요).
다음 매개변수를 포함하세요.
result 객체에서 다음 값을 앱의 데이터베이스에 저장하는 것이 중요합니다.
액세스 토큰을 안전하게 관리하려면 앱에서 만료 시간을 추적하고 필요할 때 새로 고침 토큰을 사용하여 새 액세스 토큰을 얻는 것도 중요합니다. 아래 코드 예시는 새로 고침 로직을 추상화하여 항상 유효한 사용자 액세스 토큰을 반환합니다.
이제 애플리케이션이 사용자 범위의 Databricks 액세스 토큰을 가지고 있으므로 로그인한 사용자를 대신하여 Genie space에 프롬프트를 제출할 수 있습니다. Databricks 액세스 토큰을 브라우저로부터 보호하고 관찰 가능성, 오류 처리, 속도 제한을 중앙에서 관리하기 위해 웹 애플리케이션용 백엔드 API 라우터를 생성하는 것을 권장합니다. 아래 코드 예제는 더 간단한 로직을 위해 FastAPI와 Genie의 SDK 를 활용합니다.
이 단계를 마치면 사용자 지정 웹 앱이 Genie와 안전하게 통합되어 사용자가 이미 사용 중인 도구에서 직접 자연어 질문을 하고 거버넌스가 적용된 인사이트를 검색할 수 있게 됩니다.
Genie는 사용자가 어디서 일하든 함께할 수 있도록 설계되었습니다. 이 블로그에서는 조직이 OAuth 인증을 사용하여 Genie의 대화형 분석 기능을 Microsoft Teams 및 맞춤형 앱에 안전하게 포함하는 방법을 다루었습니다.
팀이 질문하는 모든 곳에 Genie를 도 입함으로써 질문에서 인사이트로, 그리고 인사이트에서 행동으로 이어지는 경로를 단축할 수 있습니다. 지금 바로 Genie 스페이스를 구축하여 사용자에게 제공해 보세요. 언제나처럼 질문 및 피드백이 있는 경우 Databricks 계정 팀에 문의하세요.
(이 글은 AI의 도움을 받아 번역되었습니다. 원문이 궁금하시다면 여기를 클릭해 주세요)
블로그를 구독하고 최신 게시물을 이메일로 받아보세요.