LangChain에서 Arxiv 논문 문서를 바로 불러올 수 있는 사실! 우선 관련 라이브러리를 설치해 주어야 합니다.pip install -qU arxiv 아카이브 라이브러리 자체가 존재하는지를 몰랐네요... https://pypi.org/project/arxiv/ arxivPython wrapper for the arXiv API: https://arxiv.org/help/api/pypi.org 해당 라이브러리를 통해 Arxiv 논문을 pdf 파일로 바로 다운로드 받을 수도 있고, API를 호출할 수도 있습니다. 특정 키워드에 대한 검색도 가능합니다.query에 특정 값을 입력해줌으로써 관련 키워드를 가진 논문을 추출해 낼 수 있습니다. 다음으로는, arxiv.org에서 라이브러리를 통해 다운로드 한..
본 게시물은 서평 리뷰어로 선정되어 도서를 제공받아 작성되었습니다. 서평을 진행하면서 함께한 실습은 제 아래 깃헙 레포에서 확인하실 수 있습니다.https://github.com/architectyou/FastAPI-TodoAPP.git파이썬 Fast API 개발 입문에 관한 책입니다.운이 좋게도 리뷰어로 선정되어 책을 볼 수 있었네요 ㅎㅎ 2024년 2월 출간되었습니다. FastAPI 공식 문서를 확인하면빠른 성능으로 파이썬 표준 타입 힌트에 기초한 Python 3.8+의 API를 빌드하기 위한 웹 프레임 워크라고 설명이 되어 있습니다. 인공지능을 기반으로 한 앱을 배포할때도 주로 쓰이는 프레임워크인 것으로 알고 있습니다.해당 프레임워크에 관심을 갖고 있던 분이라면 (저처럼) 책을 참고하시면서 실습하..
LangChain을 이용해 RAG 와 같은 토이프로젝트를 실행해보셨던 분들이라면 익숙하실 python 모듈입니다. https://pypi.org/project/chromadb/ chromadb Chroma. pypi.org RAG를 구현하려면 벡터 데이터베이스로부터 정보를 가져와 LLM에 전달해야 하죠? 벡터 데이터베이스 역할을 하는 것이 바로 Chromadb 모듈입니다. pypi 에 나와있는 모듈 특징을 보더라도 LangChain, LlamaIndex를 위주로 하는 데이터베이스 모델임을 확인할 수 있습니다. 다음 명령어를 통해 설치할 수 있습니다. pip install chromadb https://velog.io/@dasiy/%EB%AC%B8%EC%84%9C%EB%A5%BC-%EA%B8%B0%EB%B..
백준 5430 문제를 풀다가.. 입력이 [1,2,3,4] 이렇게 문자열 형식으로 들어오는데 이걸 바로 list로 받아볼 수 없을까 해서 찾아보다 알게 되었다. ast 모듈을 이용하면 됨! import ast list = ast.literal_eval(input()) 이런식으로 코드를 작성하면 된다. 만약 이미 리스트로 저장되어있는 경우여서 원소의 타입만 변경해주어야 하는 경우라면 map 을 이용하면 된다. int_list = list(map(int, str_list)) map을 이용하는 방법은 잘 알지만, 입력으로 [1,2,3,4] 이런식으로 str을 받게 되어버리면 리스트로 인식하는게 아니라 '[' 기호 ',' 기호 등 따로 입력으로 인식되기 때문에 아래 방법이 통하지 않는다. ++) 근데 ast 모듈..
백준 10799번 문제입니다. 이젠 괄호만 봐도 스택이 생각나버리는...😞 이번 문제는 이해하는게 너무 오래 걸리고 어려워서 글을 작성하게 되었습니다. 문제 해결 아이디어 괄호 문제의 포인트는 괄호를 스택에 넣고 쌍이 맞게 되면 pop()을 통해 빼내는 방식으로 해내는 것입니다. "(" 기호가 들어오게 되면 쇠막대기가 있거나 or 레이저로 시작점을 자르는 경우가 됩니다. "(" 기호가 들어오고 ")" 기호가 바로 들어오는 경우 -> 레이저로 자르게 되는 경우 (막대의 오른쪽 끝) ")" 만 들어온 경우 -> "(" 기호는 막대의 시작점이 된다. (막대의 왼쪽 끝) 위의 두 아이디어를 가지고 문제의 그림을 다시 봅시다. ()로 괄호가 완성된 시점에서 레이저를 통해 막대를 자를 수 있습니다. 첫 번째 괄호 ..
백준 11726번 타일링 문제입니다. DP 문제의 특징은 전에 계산된 식의 결과값을 다시 사용함으로써 메모리 효용성을 기대하는 것이죠. 그래서 문제에 대한 반복적인 규칙을 찾아 점화식을 만들어 푸는 방법으로 접근해야합니다. 문제 분석 $2*n$ 크기의 직사각형을 $1*2$ 혹은 $2*1$ 의 타일로 채우는 방법은 두 가지 경우의 수로 나눌 수 있습니다. 마지막 직사각형이 $1*2$ 타일이 한 개 들어가는 경우 마지막 직사각형으로 $2*1$ 타일이 두 개 들어가는 경우 첫 번째 경우는 마지막은 $1*2$ 타일로 놓고, $2*(n-1)$ 크기의 직사각형을 채우는 방법의 수와 같죠. 두 번째 경우는 마지막에 타일이 두 개가 들어가기 때문에 $2*(n-2)$ 크기의 직사각형을 채우는 방법의 수와 같아집니다. 그..