Inflearn brand logo image

인프런 커뮤니티 질문&답변

윤정님의 프로필 이미지
윤정

작성한 질문수

RAG를 활용한 LLM Application 개발 (feat. LangChain)

3.1 환경 설정과 LangChain의 ChatOpenAI를 활용한 검증

gemini 오류관련 질문드립니다.

해결된 질문

작성

·

186

0

안녕하세요, 강의 반복중에 있습니다.

이번에는 gemini로 RAG를 구축해보려고 하는데,

API Key를 활성화했음에도 계속 하기와 같은 에러가 뜹니다.ㅠ 제가 놓친 부분이 있을까요?

from langchain_google_genai import ChatGoogleGenerativeAI

llm = ChatGoogleGenerativeAI(
    model="gemini-2.0-flash",
    temperature=0,
    max_tokens=None,
    timeout=None,
    max_retries=2,
    # other params...
)

llm.invoke("인프런에 어떤 강의가 있나요?")

---------------------------------------------------------------------------
PermissionDenied                          Traceback (most recent call last)
Cell In[2], line 1
----> 1 llm.invoke("인프런에 어떤 강의가 있나요?")

File c:\Users\yunjeong2.lee\Desktop\VenvWorkspace\myenv\Lib\site-packages\langchain_google_genai\chat_models.py:1255, in ChatGoogleGenerativeAI.invoke(self, input, config, code_execution, stop, **kwargs)
   1250     else:
   1251         raise ValueError(
   1252             "Tools are already defined." "code_execution tool can't be defined"
   1253         )
-> 1255 return super().invoke(input, config, stop=stop, **kwargs)

File c:\Users\yunjeong2.lee\Desktop\VenvWorkspace\myenv\Lib\site-packages\langchain_core\language_models\chat_models.py:372, in BaseChatModel.invoke(self, input, config, stop, **kwargs)
    360 @override
    361 def invoke(
    362     self,
   (...)    367     **kwargs: Any,
    368 ) -> BaseMessage:
    369     config = ensure_config(config)
    370     return cast(
    371         "ChatGeneration",
--> 372         self.generate_prompt(
    373             [self._convert_input(input)],
    374             stop=stop,
    375             callbacks=config.get("callbacks"),
...
metadata {
  key: "method"
  value: "google.ai.generativelanguage.v1beta.GenerativeService.GenerateContent"
}
]
Output is truncated. View as a scrollable element or open in a text editor. Adjust cell output settings...

답변 2

0

강병진님의 프로필 이미지
강병진
지식공유자

안녕하세요!

혹시 환경변수를 빠트리신게 아닐까요? GOOGLE_API_KEY 값이 .env 에 있어야합니다!

0

안녕하세요, 인프런 AI 인턴입니다. 윤정님께서 질문하신 내용은 Gemini 모델을 사용하여 RAG를 구축할 때 발생하는 PermissionDenied 오류에 대한 것입니다. 이를 처리하기 위한 몇 가지 방법을 제안드리겠습니다.

문제 요약

  1. Permission Denied 오류: 이 오류는 API 호출에 대한 권한 또는 구성 관련 문제가 있을 때 발생할 수 있습니다.
  2. API Key 설정 문제: API 키가 올바르게 활성화되지 않았거나 사용 권한이 부족할 경우 발생할 수 있습니다.

원인 및 해결책

  1. API Key 유효성 확인

    • Google 클라우드 콘솔을 통해 API 키가 정확히 설정되었는지 확인하세요. 또한, 오타나 잘못된 환경 세팅이 있는지 점검해야 합니다.
    • API 키가 올바르게 설정되었는지 확인하고, 적절한 권한이 있는지도 확인해야 합니다.
  2. Google Cloud Platform 설정 확인

    • 해당 API가 Google Cloud Platform에서 활성화되어 있는지 확인하세요. API 및 서비스 항목에서 프로젝트의 API 사용 설정을 확인합니다.
    • API 및 서비스 사용량 페이지에서 할당량 초과나 차단된 요청이 있는지도 체크하세요.
  3. OAuth 2.0 인증 설정 확인

    • 사용 중인 API가 OAuth 2.0 인증을 필요로 하는 경우, 관련 설정을 확인하여 올바르게 구성했는지 확인해 보세요.

추가 정보 및 디버깅

  • 오류 발생 시의 로그와 환경 설정을 보다 자세히 확인해 문제를 찾는 것이 중요합니다.
  • Google Cloud 문서와 LangChain의 특정 모델 관련 문서를 참조하여 필요한 설정을 더 보완해보세요.

관련 자료

위의 방법들을 차례로 확인해보시고, 필요할 경우 다른 관련 구성을 통해 문제를 해결해보세요. 필요시에는 더 구체적인 오류 로그와 함께 다시 질문해 주시면 추가적인 도움을 드리겠습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

윤정님의 프로필 이미지
윤정

작성한 질문수

질문하기