langchain에서 제공하는 cache 기능을 사용하여 질의 응답을 캐싱하였으나 내부적으로 어떻게 동작하는지 궁금해서 찾아보았다. 먼저 chat_models.py의 _agenerate_with_cache 메소드가 실행이 된다. 그 안에 아래의 함수가 호출이 되면서 cache에 같은 데이터가 있는지 찾는다.cache_val = await llm_cache.alookup(prompt, llm_string) #chat_models.pyasync def _agenerate_with_cache( self, messages: List[BaseMessage], stop: Optional[List[str]] = None, run_manager: Optional[AsyncCallbackManage..
문제를 풀었지만 정말 복잡하게 풀었다... 그리고 메모리 초과가 나서 코드를 살펴보니 del의 경우 O(N)이기 떄문에 for 문과 함께 전체적으로 O(N^2) 이기 때문에 효율적이지 못한 코드이다. 요새 코딩테스트를 보면서 메모리 효율적으로 사용해야하는 코드가 필요하다는 것을 절실히 느낀다.import syss = list(sys.stdin.readline())n = int(sys.stdin.readline())c_idx = len(s)for _ in range(n): input_ = list(map(str, sys.stdin.readline().split())) if input_[0] == "L": # 왼쪽 if c_idx == 0: # 커서가 맨 왼쪽에 있다면 ..
알고리즘을 풀다보면 sort를 사용하는 순간이 있다. 이때 단순히 오름차순 내림차순만 하다가 막히는 부분이 있었다.아래와 같이 on, oon인 경우 앞에 글자는 o로 동일하기 때문에 그다음 정렬 순서는 어떻게 하는지 의문이 들었다.aekjoonbaekjoonekjoonjoonkjoonnonoon ChatGPT한테 물어본 결과 기본적으로 사전식 정렬을 따르고 첫글자를 비교하고 다음 글자를 비교한다고 한다. o가 같으니 그 다음에 n과 o를 비교하는 것이다. 그 외에 다음과 같은 규칙이 있다. 1) 대문자가 항상 소문자보다 먼저 온다.2) 숫자는 항상 문자 앞에 온다.기본적이지만 놓질 수 있는 부분이므로 암기하자.
파이썬으로 데이터를 처리하면 C에 비해 많이 느리다고 한다. C는 컴퓨터와 가장 가까운 언어이기 때문에 빠르다. 즉 컴퓨터에게 친숙한 언어를 사용한다고 생각하면된다. 모든지 단점을파이썬으로 데이터를 처리하면 C에 비해 많이 느리다고 한다. C는 컴퓨터와 가장 가까운 언어이기 때문에 빠르다. 즉 컴퓨터에게 친숙한 언어를 사용한다고 생각하면된다. 모든지 단점이 있다면 이를 보완하는 방법을 마련하듯이 파이썬의 속도를 보완하기 위해 numpy 라이브러리를 사용한다.어떤 차이점이 있어서 속도가 다른건지 간단하게 Python과 Numpy에서 리스트 구조의 차이점을 살펴보았다.위의 그림에서 살펴보면 Python은 리스트에 메모리 주소를 저장한다. 즉 다이렉트로 데이터가 있는 주소를 방문하지 않고 중간의 업체를 관리만..
mlflow에 LLM Deployment Server를 사용하는 방법이 있어 실제로 실습을 진행했다. Config.yamlendpoints:- name: completions endpoint_type: llm/v1/completions model: provider: openai name: gpt-3.5-turbo config: openai_api_key: $OPENAI_API_KEY- name: chat endpoint_type: llm/v1/chat model: provider: openai name: gpt-4 config: openai_api_key: $OPENAI_API_KEY- name: chat_3.5..
LLM 서비스를 개발하다 보니 토큰 비용 문제로 캐시 서버를 운영해야하는 상황이 생겼다.사용자의 질의를 캐싱하는 기능이 있는데 Redis는 인메모리 DB 이므로 메모리를 많이 사용한다. 따라서 계속 메모리를 잡아먹기 때문에 주기적으로 지울 필요성이 있다고 생각했다. redis.conf 파일 다운 주소 : https://redis.io/topics/configconf 파일에 대한 설정은 다음의 블로그에 아주 친절하게 설명되어 있다. https://blog.naver.com/eastee/220081013385 docker-compose.ymlversion: '3.8'services: redis: image: redis:7.2.4 container_name: redis env_file: ..
- Total
- Today
- Yesterday
- 카카오페이면접후기
- 코딩테스트
- 리눅스
- 자료구조
- 보안
- linux
- lightsail
- synflooding
- FastAPI
- 프로그래머스
- t검정
- t-test
- 정보보안
- 카카오페이
- 그리디
- 딥러닝
- 분산시스템
- Ai
- 백준
- springboot
- LangChain
- Python
- 다이나믹프로그래밍
- 파이썬
- 우선순위큐
- 시간초과
- 정보보안기사
- java
- 보안기사
- llm
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |