google Bard API 사용해보기
개요
현재 사이드프로젝트의 주제를 새롭게 정하여 진행하고 있는데 OpenAI를 이용한 서비스를 구현할까 생각하고 있다.
GPT도 있고 Bard도 있는데, GPT는 무료크레딧을 주고 정확한 정보를 제공하지만 정보가 2021년도에 막혀있다는 단점이 있어서 Bard를 사용해볼까 테스트를 진행하였다.
오랜만에 기술블로그에 글 쓸겸해서..
이런 openAI코드들이 그렇듯, 대부분 python으로 제공되므로 python을 사용해서 테스트해볼 것이다.
영어문서가 잘 나와있지만 그것도 보기 귀찮은 어느 사람들을 위해 글을 쓴다.
코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import requests
from bardapi.constants import SESSION_HEADERS
from bardapi import Bard
from markdown import markdown
token = ""
session = requests.Session()
session.headers = SESSION_HEADERS
session.cookies.set("__Secure-1PSID", token)
session.cookies.set("__Secure-1PSIDTS", "custom value")
session.cookies.set("__Secure-1PSIDCC", "custom value")
bard = Bard(token=token, session=session)
response = bard.get_answer("깃허브 id가 kkminseok인 사람의 깃허브 프로필 주소를 알려줘")
response_content = response['content']
response_image = response['links']
filtered_links = [link for link in response_image if "https://lh3.googleusercontent.com/" in link or "http://t0.gstatic.com/" in link]
print(markdown(response_content))
print(filtered_links)
코드를 보면 cookie를 가지고 짬뽕을 하는걸 알 수 있다.
에 들어가서 개발자도구 -> 애플리케이션 -> 쿠키에 들어가면 해당값들을 볼 수 있다.
__Secure-1PSID, __Secure-1PSIDTS, __Secure-1PSIDCC값들을 맞게 설정해주고 나머지는 알아서 작성하면된다.
위 코드에서 filtered_links
가 있는데, stackoverflow에서 이미지 링크를 응답으로 받았을때 그걸 검출위한 코드로 제시하고 있어서 써봤다. 근데 잘 되지는 않는다. 연구가 필요한 부분..
markdown
라이브러리르 사용한 것은, 기본적으로 응답이 markdown문법으로 내려온다.
대략
1
2
3
**개요**
*어떤 글*
이런식으로 응답이 내려와서 웹에 해당 응답을 줘야한다면 markdown이 아닌, 웹이 알 수 있는 html로 변환해서 내려줘야할 것이다.
저렇게 markdown()
으로 감싸면 html로 감싸서 응답을 줄 수 있으므로 참고하면 될 것 같다.
결과
This post is licensed under CC BY 4.0 by the author.