게시일: 2025년 2월 28일
기본 제공 AI는 Gemini Nano를 사용하여 모든 API에 대한 추론을 실행합니다. Gemini Nano가 오류 메시지를 반환하거나 예상한 결과를 반환하지 못할 수도 있습니다. Gemini Nano를 사용하는 모든 기본 제공 AI API의 디버그 정보를 검토할 수 있습니다. 여기에는 Prompt API, Summarizer API, Writer API, Rewriter API가 포함됩니다.
- Chrome을 열고
chrome://on-device-internals
로 이동합니다. - 이벤트 로그를 선택합니다.
- (선택사항) 덤프를 클릭하여 모든 이벤트 정보가 포함된 JSON 파일을 다운로드합니다.
구현에서 이 오류를 해결할 수 있도록 버그를 신고하실 수 있습니다.
예: Prompt API 디버그
예를 들어 다음 세션에서 사용자는 Prompt API에 라임이 있는 단어를 요청했습니다.
const session = await ai.languageModel.create({
systemPrompt: "You are an API endpoint that returns rhymes as JSON for an input word."
});
await session.prompt([
{ role: "user", content: "house" },
{ role: "assistant", content: "{\"input\": \"house\", \"output\": \"mouse\"}" },
{ role: "user", content: "file"},
]);
모델의 응답은 가독성을 위해 형식이 지정된 다음과 같습니다.
```json
[]
```
**Reasoning:**
The input you provided (empty arrays) is an empty list or array in JSON format.
When you try to find rhymes for an empty list, you're essentially looking for
words that rhyme with nothing.
Therefore, there are no rhymes to return. The JSON response will be an empty
array `[]`."
모델이 운율이 맞는 단어(이상적으로는 {"input": "file", "output": "pile"}
)가 포함된 JSON 메시지를 반환하지 않은 이유는 무엇인가요? 이 글을 작성하는 시점에 구조화된 출력은 아직 구현되지 않았지만 응답은 적어도 어떻게든 운율 맞추기 작업을 실행해야 합니다.
이 오류를 디버그하려면 chrome://on-device-internals/
로 이동하여 이벤트 로그 탭으로 이동합니다. 로그에 따르면 모델이 프롬프트를 해석하는 데 문제가 있었습니다. 모델은 JSON 대신 입력을 문자열 [object Object],[object Object],[object Object]
로 이해했습니다.
다음은 가독성을 위해 형식이 지정된 전체 디버그 메시지입니다.
Executing model with input context of 0 tokens:
<system>You are an API endpoint that returns rhymes as JSON for an input word.<end>
with string: <user>[object Object],[object Object],[object Object]<end> <model>
이 정보를 모델 문제의 버그인 Prompt API가 JSON 입력에서 toString()
를 실행하는 것 같음에 추가하여 엔지니어링팀이 문제를 파악하는 데 도움이 되었습니다.
의견 공유
버그 신고를 제출하여 디버깅 의견을 공유하세요.