ChatGPT는 API가 있지만, 구글 바드는 아직 실험중이라 그런지 공식 API가 없다.
그런데 깃허브에 있는 어떤 고수가 비공식 바드 API를 공개해서 사용해볼 수 있다.
일단 이걸 써보다가 나중에 공식 API가 나오면 사용해보자.
기본적으로 VSCode에 Python이 설치되어 있다고 가정하고 작성한다.(pip를 사용해야 하니까)
브라우저는 크롬을 사용한다.
Python 패키지 설치
pip install bardapi
VSCode Terminal에 위 명령어로 bardapi 패키지를 설치한다.
바드 쿠키 가져오기
구글 바드 홈페이지에 접속해서 F12를 눌러서 Application 탭에서 Cookies에 __Secure-1PSID의 Value를 .까지 포함해서 전부 복사해둔다.
Python 코드 작성
import bardapi
token = "YOUR TOKEN HERE"
question = "안녕?"
response = bardapi.core.Bard(token=token).get_answer(question)
result = response['choices'][0]['content'][0]
print(result)
위 코드를 복사해서 VSCode의 Python 파일에 붙여넣고 복사한 바드 쿠키를 저기(YOUR TOKEN HERE)에 넣는다.
question에 질문하고 싶은 말을 적고
실행하면
바드가 친절하게 대답해준다.
바드가 3가지 답변을 해주는데, 각각의 답변을 보고싶다면
코드의 ['Choices'][0] 이 부분을 ['Choices'][1] 이나 ['Choices'][2]로 바꿔주면 된다.
FastAPI 활용
FastAPI를 활용하면 웹 브라우저에서 API처럼 사용해볼 수 있다.
pip install fastapi
pip install uvicorn
두개의 패키지를 설치한다.
import bardapi
from fastapi import FastAPI
api = FastAPI()
token = "YOUR TOKEN HERE"
@api.get('/chat')
def chat(question):
response = bardapi.core.Bard(token=token).get_answer(question)
result = response['choices'][0]['content'][0]
return result
마찬가지로 쿠키를 token에 넣고 Terminal 열어서 uvicorn BardAPI:api --reload 명령어로 실행해보자.
참고로 BardAPI:api에서 BardAPI는 .py 파일 이름이다.
크롬 열어서 http://127.0.0.1:8000/chat?question=질문 으로 테스트해보자.
대답이 이상하긴 해도(화씨 94도인듯?) 잘 동작하는 것 같다.
'Python' 카테고리의 다른 글
[VSCode] 코딩 단축키 (0) | 2022.10.31 |
---|---|
[Python] Flask로 간단하게 웹사이트 만들기 (+ Pico.css) (0) | 2022.09.20 |
[Python] BeautifulSoup를 활용한 웹 크롤링 예제 (0) | 2022.09.05 |