# 시각화 표현식에서 Google AI - Gemini 연결 사용

로드 스크립트를 사용하여 데이터 모델에 Gemini 입력 및 응답을 추가하는 것 외에도, 분석 모드에서 응용 프로그램의 차트에서 직접 이러한 작업을 수행할 수도 있습니다. 단일 필드의 데이터는 사용자와 Google AI - Gemini 간에 주고 받습니다.

대부분의 경우 로드 스크립트 연결에 사용되는 코드는 약간의 차이가 있지만 차트에서 사용하기 위해 용도를 변경할 수 있습니다.

사용 사례가 사용자 입력을 기반으로 하는 경우 차트 표현식에서 분석 연결 및 해당 서버 측 확장 구문을 사용하여 모델 종료 지점에서 수신된 데이터를 시각화하는 대화형 차트를 만들 수 있습니다.

## 데이터 요청 볼륨에 대한 고려 사항

하나 또는 소수의 데이터 행에 대한 차트 표현식에서만 Google AI - Gemini 연결을 사용하는 것이 좋습니다. 차트 표현식을 사용하여 대량의 데이터를 Gemini AI 플랫폼으로 전송하는 것은 권장되지 않습니다.

각 요청과 함께 보내는 행 수를 아는 것이 중요합니다. 차트 표현식에서 연결을 구성할 때 오류가 발생하면 의도치 않게 큰 요청이 발생할 수 있습니다(예: 차트에서 데이터 모델을 부적절하게 사용하여 같은질문이 있는 동일한 행). 타사 플랫폼과 상호 작용하기 전에 차트 표현식 계산에 사용된 필드와 데이터 모델에서의 해당 위치가 타사와의 금융 계약 및 청구 계약에 어떤 영향을 미치는지 확인합니다. 외부 플랫폼을 많이 사용하면 비용이 더 많이 발생할 수 있습니다.

요청 크기를 조정하고 제한하려면 다음 지침을 따르십시오.

* 이러한 커넥터 구성 중 다수는 상호 관련된 여러 응답 필드를 반환합니다. 차트의 응답 필드 중 하나만 필요한 시나리오에서 연결을 사용하는 경우 텍스트 및 이미지 개체와 함께 표현식을 사용합니다. 여러 응답 필드를 표 형식으로 나타내야 하는 경우 대신 로드 스크립트의 커넥터를 사용합니다. 이러한 표현식을 데이터 모델의 필드에 연결하면 잘못 구성된 경우 의도치 않게 큰 요청이 발생할 수 있습니다. 대신 이러한 시나리오에서는 로드 스크립트를 사용하는 것이 좋습니다.

* 차트가 다시 계산되는 시기를 제어하고 응용 프로그램에서 사용자 선택에 따라 업데이트하려면 표현식에 `if` 문을 추가하는 것이 좋습니다.

## 차트 표현식 만들기

다음과 같이 하십시오.

1. 시각화를 편집할 때 the 표현식 icon을 클릭하여 식 편집기를 시작합니다.

2. 식 편집기에서 표현식 필드에 표현식을 입력합니다. 표현식은 서버 측 확장 구문을 사용하여 구성해야 합니다.

## 빠른 예

여기에서 Google AI - Gemini 커넥터를 시작할 때 사용할 수 있는 샘플 표현식을 찾을 수 있습니다. 다음 세부 사항을 고려합니다.

* 텍스트 개체(Dashboard bundle에서)가 있는 표현식만 사용합니다. [텍스트](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Visualizations/DashboardBundle/text-object.htm)을 참조하십시오.

* 차트가 다시 계산되는 시기를 제어하고 응용 프로그램에서 사용자 선택에 따라 업데이트하려면 표현식에 `if` 문을 추가하는 것이 좋습니다.

* 표현식이 작동하려면 `connectionname` 값과 필드 이름을 자신의 연결 및 스크립트와 일치하도록 대체해야 합니다.

### 예 1

이 문은 표현식에 입력된 단일 질문에 대한 응답을 반환합니다.

경고 메모

이 표현식은 `if` 문을 사용하지 않으며 데이터 모델의 필드에 연결된 경우 사용하지 않는 것이 좋습니다. 하드 코딩된 값을 포함하는 단일 입력 셀이 있는 독립 실행형 표현식에만 사용하기에 적합합니다.

```
endpoints.ScriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Google_Connection","column":"text"}}', 'Translate this text from english to spanish: The sun was rising over the new tomorrow with a tinge of excitement.')
```

### 예 2

이는 변수 입력 컨트롤에 연결된 텍스트 개체(Dashboard bundle에서)에서 사용할 수 있는 문입니다. 차트는 입력이 입력된 경우에만 계산됩니다. 사용자가 개체에 입력을 입력하고 Enter 키를 누르면 차트에 모델의 입력에 대한 응답이 표시됩니다.

다른 커넥터를 사용한 유사한 연습은 [연습: 변수를 사용하여 텍스트 입력 상자 만들기](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-openai-tutorial-example-3.htm#Exercise)를 참조하십시오.

```
if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Google_Connection","column":"text"}}',vQuestion))
```

### 예 3

이 예에서 차트는 응용 프로그램의 데이터 모델에 있는 `IssueCategory` 필드에서 하나의 고유 값을 선택한 경우에만 계산됩니다. 일반적인 문제 유형에 대해 기술 지원 부서의 샘플 응답을 요청하는 요청이 모델로 전송됩니다. 해당 목록은 `IssueCategory` 필드에 포함되어 있습니다. 사용자가 선택한 값에 따라 차트가 업데이트됩니다.

```
if(count(distinct [IssueCategory]) = 1, endpoints.ScriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Google_Connection","column":"text"}}', 'Write me a sample response from a technical support department for a customer complaint about ' & [IssueCategory]'))
```

## 자세한 정보

* [서버 측 확장 구문](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/sse-syntax.htm)
* [if 스크립트 및 차트 함수](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/if.htm)
* [GetSelectedCount - 차트 함수](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/FieldFunctions/getselectedcount.htm)
* [표현식에서 변수 사용](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Variables/work-with-variables.htm)