Python

Bard API key 오류 / error

summerorange 2023. 10. 4. 23:19
반응형

23.10.04 현재 beta 버전의 Bard. 

chatGPT 와 Bard를 사용하고 있는데 Bard는 현재 베타 버전이지만 

!pip install bardapi

요 라이브러리를 설치한 뒤 호출해서, 쿠키 값을 활용해서 api 활용할 수 있다.

api를 임시로 끌어 쓸 수 있는데 키값 에러가 나는 경우가 있다.

보통 다음과 같이 뜬다.

__Secure-1PSID를 제대로 찾아서 넣었는데도 이 에러가 뜬다면,

    153         if not snim0e:
--> 154             raise Exception(
    155                 "SNlM0e value not found. Double-check __Secure-1PSID value or pass it as token='xxxxx'."
    156             )

Exception: SNlM0e value not found. Double-check __Secure-1PSID value or pass it as token='xxxxx'.

시크릿 창에서 다시 바드를 실행시킨 다음, 해당 키 값을 불러오면 된다.

쿠키 값은 계속 변하기 때문에,

에러가 나는 건 해당 값이 이미 이전 값이나 변경 된 값일 경우가 큽니다.

그리고 난 뒤엔 제대로 작동합니다.

Edge 브라우저 문제인지 싶었는데, 크롬에도 동일한 문제가 있어서, 쿠키 값 문제인 경우가 큼!

 

사용 코드 예시!

# 01.simple usage
from bardapi import Bard
import os

token='~~~.'

Bard(token=token).get_answer("파이썬 패키지 ExceptNotifier에 대해서 설명해줘")['content']

 

# 02.with timeout variable
from bardapi import Bard
import os

token='~~.'

Bard(token, timeout=10).get_answer("파이썬 패키지 ExceptNotifier에 대해서 설명해줘")['content']
# 03. usage
import bardapi
import os

# set your __Secure-1PSID value to key
token='~~.'

# set your input text
input_text = "우리 동년배들이 좋아하는 뉴진스에 대해서 알려줘"

# Send an API request and get a response.
response = bardapi.core.Bard(token).get_answer(input_text)
# 04. session object as argument
from bardapi import Bard
import os
import requests

token='~~.'
session = requests.Session()
session.headers = {
            "Host": "bard.google.com",
            "X-Same-Domain": "1",
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36",
            "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
            "Origin": "https://bard.google.com",
            "Referer": "https://bard.google.com/",
        }
session.cookies.set("__Secure-1PSID", token)

bard = Bard(token=token, session=session)
bard.get_answer("나와 내 동년배들이 좋아하는 뉴진스에 대해서 알려줘")['content']

using _environment variable 예시

# 01.simple usage

from bardapi import Bard
import os

os.environ['_BARD_API_KEY']='~.'

Bard().get_answer("파이썬 패키지 ExceptNotifier에 대해서 설명해줘")['content']
# 02.with timeout variable

from bardapi import Bard
import os

os.environ['_BARD_API_KEY']='xxxxxxxxxxxx'

Bard(timeout=10).get_answer("파이썬 패키지 ExceptNotifier에 대해서 설명해줘")['content']
# 03. usage

import bardapi
import os

# set your __Secure-1PSID value to key
os.environ['_BARD_API_KEY']='xxxxxxxxxxxx'

# set your input text
input_text = "우리 동년배들이 좋아하는 뉴진스에 대해서 알려줘"

# Send an API request and get a response.
response = bardapi.core.Bard().get_answer(input_text)
# 04. session object as argument

from bardapi import Bard
import os
import requests

os.environ['_BARD_API_KEY']='bAhshxmLhsCWB8OAITy4u1cxGfY6xtmuIcFE9Ghms8n8aBr8WSwEndXU5YFLbZ_Ub2iARA.'
#'bAhshxmLhsCWB8OAITy4u1cxGfY6xtmuIcFE9Ghms8n8aBr8WSwEndXU5YFLbZ_Ub2iARA.'
session = requests.Session()
session.headers = {
            "Host": "bard.google.com",
            "X-Same-Domain": "1",
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36",
            "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
            "Origin": "https://bard.google.com",
            "Referer": "https://bard.google.com/",
        }
session.cookies.set("__Secure-1PSID", os.environ["_BARD_API_KEY"])

bard = Bard(session=session)
bard.get_answer("나와 내 동년배들이 좋아하는 뉴진스에 대해서 알려줘")['content']

 

끝.

반응형