Salesforce에 연결하여 Amazon Bedrock 지식 베이스를 확인해 보십시오. - Amazon Bedrock

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Salesforce에 연결하여 Amazon Bedrock 지식 베이스를 확인해 보십시오.

참고

Salesforce 데이터 소스 커넥터는 프리뷰 릴리스 중이며 변경될 수 있습니다.

Salesforce는 지원, 영업 및 마케팅 팀을 관리하기 위한 CRM(고객 관계 관리) 도구입니다. Amazon Bedrock용 AWS 관리 콘솔 또는 API를 사용하여 Amazon Bedrock 지식 기반용 Salesforce 인스턴스에 연결할 수 있습니다 CreateDataSource(Amazon Bedrock 지원 SDK 및 참조). AWS CLI

현재는 Amazon OpenSearch Serverless 벡터 스토어만 이 데이터 소스와 함께 사용할 수 있습니다.

지원되는 기능

  • 기본 문서 필드 자동 감지

  • 포함/제외 콘텐츠 필터

  • 추가, 업데이트, 삭제된 콘텐츠에 대한 증분 콘텐츠 동기화

  • OAuth 2.0 인증

사전 조건

Salesforce에서는 다음 사항을 확인하십시오.

  • Salesforce 인스턴스 URL을 기록해 두십시오. 예: https://company.salesforce.com/. 인스턴스는 Salesforce 커넥티드 앱을 실행 중이어야 합니다.

  • Salesforce 커넥티드 앱을 만들고 클라이언트 자격 증명을 구성합니다. 그런 다음 선택한 앱에 대해 OAuth 설정에서 소비자 키 (클라이언트 ID) 와 소비자 암호 (클라이언트 암호) 를 복사합니다. 자세한 내용은 연결된 앱 만들기 및 OAuth 2.0 클라이언트 자격 증명을 위한 연결된 앱 구성에 대한 Salesforce 설명서를 참조하십시오.

AWS 계정에서 다음을 확인하십시오.

  • 인증 자격 증명을 AWS Secrets Manager 시크릿에 저장하고, API를 사용하는 경우 시크릿의 Amazon 리소스 이름 (ARN) 을 기록해 둡니다. 이 페이지의 연결 구성 지침에 따라 암호에 포함해야 하는 키-값 쌍을 포함시키십시오.

  • 지식창고의 AWS Identity and Access Management (IAM) 역할/권한 정책에 데이터 원본에 연결하는 데 필요한 권한을 포함시키십시오. 지식창고 IAM 역할에 추가하기 위해 이 데이터 원본에 필요한 권한에 대한 자세한 내용은 데이터 원본에 액세스할 수 있는 권한을 참조하십시오.

참고

콘솔을 사용하는 경우 데이터 원본 구성 단계에서 암호를 추가하거나 기존 암호를 선택할 수 있습니다. AWS Secrets Manager 지식창고를 만들기 위한 콘솔 단계의 일부로 필요한 모든 권한이 포함된 IAM 역할을 자동으로 만들 수 있습니다. 데이터 원본 및 기타 구성을 구성한 후에는 필요한 모든 권한이 있는 IAM 역할이 특정 지식창고에 적용됩니다.

보안 인증 정보와 보안 암호를 정기적으로 새로 고치거나 교체하는 것이 좋습니다. 보안을 위해 필요한 액세스 수준만 제공하세요. 여러 데이터 원본에서 자격 증명과 암호를 재사용하지 않는 것이 좋습니다.

연결 구성

Salesforce 인스턴스에 연결하려면 Amazon Bedrock이 데이터에 액세스하고 크롤링할 수 있도록 필요한 구성 정보를 제공해야 합니다. 또한 다음을 따라야 합니다. 사전 조건

이 섹션에는 이 데이터 원본의 구성 예가 포함되어 있습니다.

문서 필드 자동 감지, 포함/제외 필터, 증분 동기화, 비밀 인증 자격 증명 및 작동 방식에 대한 자세한 내용은 다음을 선택하십시오.

데이터 소스 커넥터는 문서 또는 콘텐츠의 모든 기본 메타데이터 필드를 자동으로 탐지하고 크롤링합니다. 예를 들어 데이터 원본 커넥터는 문서에 해당하는 문서 본문, 문서 제목, 문서 작성 또는 수정 날짜 또는 문서에 적용될 수 있는 기타 핵심 필드를 크롤링할 수 있습니다.

중요

콘텐츠에 민감한 정보가 포함된 경우 민감한 정보를 사용하여 Amazon Bedrock 응답할 수 있습니다.

특정 콘텐츠 크롤링을 포함하거나 제외할 수 있습니다. 예를 들어 파일 이름에 '비공개'가 포함된 파일은 크롤링하지 않도록 제외 접두사/정규 표현식 패턴을 지정할 수 있습니다. 특정 콘텐츠 엔티티 또는 콘텐츠 형식을 포함하도록 포함 접두사/정규 표현식 패턴을 지정할 수도 있습니다. 포함 및 제외 필터를 지정하고 둘 다 문서와 일치하면 제외 필터가 우선하며 문서가 크롤링되지 않습니다.

다음 콘텐츠 유형에 포함/제외 필터를 적용할 수 있습니다.

  • Account: 계정 번호/식별자

  • Attachment: 확장자가 있는 첨부 파일 이름

  • Campaign: 캠페인 이름 및 관련 식별자

  • ContentVersion: 문서 버전 및 관련 식별자

  • Partner: 관련 식별자를 포함한 파트너 정보 필드

  • Pricebook2: 제품/가격표 이름

  • Case: 고객 문의/문제 번호 및 관련 식별자를 포함한 기타 정보 필드 (참고: 개인 정보를 포함할 수 있으며, 개인 정보는 제외하거나 필터링할 수 있음)

  • Contact: 고객 정보 필드 (참고: 제외하거나 필터링할 수 있는 개인 정보를 포함할 수 있음)

  • Contract: 계약명 및 관련 식별자

  • Document: 확장자가 있는 파일 이름

  • Idea: 아이디어 정보 필드 및 관련 식별자

  • Lead: 잠재적 신규 고객 정보 필드 (참고: 개인 정보를 포함할 수 있으며, 개인 정보는 제외하거나 필터링할 수 있음)

  • Opportunity: 보류 중인 판매/거래 정보 필드 및 관련 식별자

  • Product2: 제품 정보 필드 및 관련 식별자

  • Solution: 고객 문의/문제의 솔루션 이름 및 관련 식별자

  • Task: 작업 정보 필드 및 관련 식별자

  • FeedItem: 채터 피드 게시물의 식별자

  • FeedComment: 댓글이 속한 채터 피드 게시물의 식별자

  • Knowledge__kav: 참조 문서 버전 및 관련 식별자

  • User: 조직 내 사용자 별칭

  • CollaborationGroup: Chatter 그룹 이름 (고유)

데이터 원본 커넥터는 데이터 원본이 지식창고와 동기화될 때마다 새 콘텐츠, 수정된 콘텐츠, 삭제된 콘텐츠를 크롤링합니다. Amazon Bedrock 데이터 원본의 메커니즘을 사용하여 콘텐츠 변경 사항을 추적하고 마지막 동기화 이후 변경된 콘텐츠를 크롤링할 수 있습니다. 데이터 원본을 지식창고와 처음으로 동기화하는 경우 기본적으로 모든 콘텐츠가 크롤링됩니다.

데이터 원본을 지식창고와 동기화하려면 StartIngestionJobAPI를 사용하거나 콘솔에서 지식창고를 선택하고 데이터 원본 개요 섹션에서 동기화를 선택합니다.

중요

데이터 소스에서 동기화하는 모든 데이터는 데이터를 검색할 bedrock:Retrieve 권한이 있는 모든 사람이 사용할 수 있습니다. 여기에는 통제된 데이터 원본 권한이 있는 모든 데이터도 포함될 수 있습니다. 자세한 내용은 지식창고 권한을 참조하십시오.

(OAuth 2.0 인증의 경우) 보안 인증 자격 증명에 다음과 같은 키-값 쌍이 AWS Secrets Manager 포함되어야 합니다.

  • consumerkey: 앱 클라이언트 ID

  • consumerSecret: 앱 클라이언트 시크릿

  • authenticationUrl: OAuth 2.0 토큰

참고

시크릿 입력은 지식창고의 동일한 영역을 AWS Secrets Manager 사용해야 합니다.

Console

다음은 Amazon Bedrock 지식 베이스를 위해 Salesforce에 연결하기 위한 구성 예제입니다. 콘솔에서 지식 기반 생성 단계의 일부로 데이터 소스를 구성합니다.

  1. Amazon Bedrock 권한으로 IAM 역할을 AWS Management Console 사용하여 로그인하고 https://console.aws.amazon.com/bedrock/ 에서 Amazon Bedrock 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 지식 베이스를 선택합니다.

  3. 지식베이스 섹션에서 지식창고 만들기를 선택합니다.

  4. 지식창고 세부 정보를 제공하십시오.

    1. 지식창고 이름과 설명 (선택 사항) 을 입력합니다.

    2. 지식창고를 만드는 데 필요한 액세스 권한의 AWS Identity and Access Management 역할을 제공하십시오.

      참고

      지식창고를 만들기 위한 콘솔 단계의 일부로 필요한 모든 권한이 포함된 IAM 역할을 자동으로 만들 수 있습니다. 지식창고 만들기 단계를 완료하면 필요한 모든 권한을 가진 IAM 역할이 특정 지식창고에 적용됩니다.

    3. 지식창고에 할당하려는 태그를 마음대로 만드세요.

    다음 섹션으로 이동하여 데이터 소스를 구성하세요.

  5. Confluence를 데이터 소스로 선택하고 연결 구성 세부 정보를 제공하십시오.

    1. 데이터 소스 이름과 선택적 설명을 입력합니다.

    2. Salesforce 인스턴스 URL을 입력합니다. 예: https://company.salesforce.com/. 인스턴스는 Salesforce 커넥티드 앱을 실행 중이어야 합니다.

    고급 설정을 확인하세요. 선택한 기본 설정을 선택적으로 변경할 수 있습니다.

  6. 고급 설정에서 임시 데이터 암호화 키 및 데이터 삭제 정책을 설정합니다.

    KMS key 설정의 경우 사용자 지정 키를 선택하거나 제공된 기본 데이터 암호화 키를 사용할 수 있습니다.

    데이터를 임베딩으로 변환하는 동안 Amazon Bedrock 기본적으로 AWS 소유하고 관리하는 키를 사용하여 임시 데이터를 암호화합니다. 자체 KMS 키를 사용할 수 있습니다. 자세한 정보는 데이터 모으기 중 임시 데이터 스토리지의 암호화을 참조하세요.

    데이터 삭제 정책 설정의 경우 다음 중 하나를 선택할 수 있습니다.

    • 삭제: 지식 기반 또는 데이터 소스 리소스 삭제 시 벡터 저장소에서 데이터 소스에 속하는 모든 데이터를 삭제합니다. 기본 벡터 저장소 자체는 삭제되지 않고 데이터만 삭제된다는 점에 유의하세요. AWS 계정이 삭제되면 이 플래그는 무시됩니다.

    • 보존: 지식 기반 또는 데이터 소스 리소스 삭제 시 벡터 스토어의 모든 데이터를 보존합니다.

    데이터 소스를 계속 구성하세요.

  7. Salesforce 인스턴스에 연결하는 데 필요한 인증 정보를 제공하십시오.

    1. OAuth 2.0 인증의 경우 으로 AWS Secrets Manager 이동하여 보안 인증 자격 증명을 추가한 다음 새로 고침 버튼을 선택하여 암호를 적용합니다. 암호에는 Salesforce 커넥티드 앱 소비자 키 (클라이언트 ID), 소비자 암호 (클라이언트 암호) 및 OAuth 2.0 토큰이 포함되어야 합니다. 자세한 내용은 연결된 앱 만들기 및 OAuth 2.0 클라이언트 자격 증명을 위한 연결된 앱 구성에 대한 Salesforce 설명서를 참조하십시오.

    데이터 소스를 계속 구성하세요.

  8. 필터/정규 표현식 패턴을 사용하여 특정 콘텐츠를 포함하거나 제외하도록 선택합니다. 그렇지 않으면 모든 표준 콘텐츠가 크롤링됩니다.

    데이터 원본을 계속 구성하세요.

  9. 기본 구성 또는 사용자 지정된 청크 및 파싱 구성을 선택합니다.

    1. 사용자 정의 설정을 선택하는 경우 다음 청크 옵션 중 하나를 선택하십시오.

      • 고정 크기 청킹: 콘텐츠를 설정된 대략적인 토큰 크기의 텍스트 청크로 분할합니다. 청크의 최대 토큰 개수를 초과해서는 안 되는 최대 토큰 수와 연속된 청크 간의 중복 비율을 설정할 수 있습니다.

      • 기본 청킹: 콘텐츠를 최대 300개의 토큰으로 구성된 텍스트 청크로 분할합니다. 단일 문서 또는 콘텐츠에 포함된 토큰이 300개 미만인 경우 문서는 더 이상 분할되지 않습니다.

      • 계층적 청킹: 콘텐츠는 상위-하위 청크의 중첩 구조로 구성됩니다. 최대 부모 청크 토큰 크기와 최대 하위 청크 토큰 크기를 설정합니다. 또한 각 상위 청크와 각 하위 청크의 상위 청크 간의 절대 중복 토큰 수를 설정합니다.

      • 시맨틱 청킹: 콘텐츠를 의미상 유사한 텍스트 청크 또는 문장 그룹으로 정리합니다. 대상/현재 문장을 둘러싸고 그룹화할 최대 문장 수 (버퍼 크기) 를 설정합니다. 또한 텍스트를 의미 있는 청크로 나누기 위한 중단점 백분위수 임계값을 설정합니다.

      • 청킹 없음: 각 문서는 단일 텍스트 청크로 취급됩니다. 문서를 별도의 파일로 분할하여 사전 처리하는 것이 좋습니다.

      참고

      데이터 원본을 만든 후에는 청크 전략을 변경할 수 없습니다.

    2. Amazon Bedrock의 기본 모델을 사용하여 문서를 파싱하여 표준 텍스트보다 더 많이 파싱하도록 선택할 수 있습니다. 예를 들어 구조를 그대로 유지한 상태로 문서 내의 표 형식 데이터를 파싱할 수 있습니다. 기초 모델 비용에 대한 자세한 내용은 Amazon Bedrock 가격을 참조하십시오.

    3. AWS Lambda 함수를 사용하여 청킹 전략을 사용자 지정하고 문서 메타데이터 속성/필드가 처리되고 수집되는 방식을 사용자 지정할 수 있습니다. Lambda 함수 입력 및 출력을 위한 Amazon S3 버킷 위치를 제공합니다.

    벡터 스토어를 구성하려면 다음 섹션으로 이동하십시오.

  10. 데이터를 벡터 임베딩으로 변환하기 위한 모델을 선택하세요.

    임베딩을 저장, 업데이트, 관리할 수 Amazon Bedrock 있는 벡터 저장소를 만드세요. 새 벡터 저장소를 빠르게 만들거나 만든 지원되는 벡터 저장소에서 선택할 수 있습니다. 현재는 Amazon OpenSearch Serverless 벡터 스토어만 이 데이터 소스와 함께 사용할 수 있습니다. 새 벡터 저장소를 생성하면 필수 필드가 포함된 Amazon OpenSearch Serverless 벡터 검색 컬렉션 및 색인이 자동으로 설정됩니다. 지원되는 벡터 스토어에서 선택하는 경우 벡터 필드 이름과 메타데이터 필드 이름을 매핑해야 합니다.

    다음 섹션으로 이동하여 지식창고 구성을 검토하세요.

  11. 지식창고의 세부 정보를 확인하세요. 지식창고를 만들기 전에 모든 섹션을 편집할 수 있습니다.

    참고

    지식창고를 만드는 데 걸리는 시간은 수집하는 데이터의 양과 특정 구성에 따라 달라집니다. 지식창고 생성이 완료되면 지식창고 상태가 준비됨으로 변경됩니다.

    지식창고 만들기가 준비되거나 완료되면 콘텐츠를 최신 상태로 유지하고 싶을 때마다 처음으로 데이터 원본을 동기화하세요. 콘솔에서 지식창고를 선택하고 데이터 원본 개요 섹션에서 동기화를 선택합니다.

API

다음은 Amazon Bedrock 지식 베이스를 위해 Salesforce에 연결하기 위한 구성 예제입니다. Python과 같이 지원되는 SDK와 함께 API를 사용하여 데이터 소스를 구성합니다. AWS CLI 호출한 CreateKnowledgeBase후에는 를 CreateDataSource호출하여 연결 정보가 포함된 데이터 소스를 생성합니다. dataSourceConfiguration 청킹 전략/접근 방식을 vectorIngestionConfiguration 명시하고 데이터 삭제 정책도 명시해야 한다는 점도 잊지 마세요. dataDeletionPolicy

AWS Command Line Interface

aws bedrock create-data-source \ --name "Salesforce connector" \ --description "Salesforce data source connector for Amazon Bedrock to use content in Salesforce" \ --knowledge-base-id "your-knowledge-base-id" \ --data-source-configuration file://salesforce-bedrock-connector-configuration.json \ --data-deletion-policy "DELETE" \ --vector-ingestion-configuration '{"chunkingConfiguration":[{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":[{"maxTokens":"100","overlapPercentage":"10"}]}]}' salesforce-bedrock-connector-configuration.json { "salesforceConfiguration": { "sourceConfiguration": { "hostUrl": "https://company.salesforce.com/", "authType": "OAUTH2_CLIENT_CREDENTIALS", "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-Salesforce" }, "crawlerConfiguration": { "filterConfiguration": { "type": "PATTERN", "patternObjectFilter": { "filters": [ { "objectType": "Campaign", "inclusionFilters": [ ".*public.*" ], "exclusionFilters": [ ".*private.*" ] } ] } } } }, "type": "SALESFORCE" }