본문 바로가기
소프트웨어 마에스트로/BackEnd(Django)

[Django] openAI 시간줄이기 5회차...

by alpakaka 2024. 10. 24.

오늘 해야 하는 일이다.

1. LLM 시간 줄이기

2. Lexorank 를 user_id + 속성 마다 줄 수 없는지 알아보기

 

일단 2번부터 해보자면..

여기에 적혀있었는데 order_with_respect_to 를 사용하면 될 것 같다. 

일단 사용해보는 걸로 해보자

저 부분을 넣고 makemigration 을 작동해도 다른 점이 없다고 한다. 이유는 모르겠다.

일단 테스트를 돌려보는 걸로 해보자.

잘 진행이 되었다.

앞에는 category 의 rank, 뒤에는 todo의 rank 인데 일단 둘이 같은 값이여도 괜찮은게 확인되었고 추가적으로 다른 user_id를 주었을 때 같은 값이 나오는지 확인해본다.

아쉽게도 user_id 가 달라도 todo_id 는 모두 같은 순서를 적용하는 것 같다. 조금 슬픈일이 되지만 모델을 그대로 사용하지 못할 것 같다. update하거나 할당해 주는 방식을 바꿔줘야 할 듯 싶다. 근데 아직 그럴 정도는 아닌 것 같아서 대략 마무리하면 될 것 같다.

 


두번째로 해야하는일은 LLM 의 시간을 줄여볼 예정이다.

어제 해본 건 prompt 줄이기 였고 한 0.1초 정도 줄일 수 있었다.

두번째로 해볼 것은 max_token을 줘볼 예정이다.

 

https://akku-dev.tistory.com/32

 

포스트맨(Postman) API 반복 요청하기

테스트 데이터를 다량 생성해야 할 일이 생겼다. DB에 INSERT문으로 쭉 밀어넣기엔, 동시에 다른 테이블에도 데이터가 생성되야 했기 때문에 API 요청으로 처리하는게 쉬워보여서 평소에 API 요청과

akku-dev.tistory.com

일단 여기를 통해서 여러번 포스트맨 요청을 줄 수 있도록 수정해보았다.

이제 테스트할 때 편할 것 같다.... 


 

서버가 또 롤백되었다. 또롤백

팀장님과 함께해결해보니 내가 바꾼게 문제였다.

settings dev 파일인데 이게 문제였다. 저기서 원래 *이여서 모든 설정을 들고오는느낌인데 이걸 저렇게 사용하는 것만 받아오는 식으로만 하다보니 필요한게 없어서 나는 에러였다.

 

어쨋든 금방 해결할 수 있어서 다행이었다...


max_token을 부르도록 하고 싶었는데 계속 에러가 발생해서 왜 그런건지 파악해보니까 max_token은 사용하지 않는다는 것이었따이...

그래서 저 max_completion_tokens 를 진행해봤는데..

음.

asynccompletions 에 대해서 한번 봐야할듯싶다.

찾다보니 하나를 알게 되었는데

저번에 설정한 timeout 이 커넥션 풀링을 의미하는게 아니였다. 정말 말 그대로 timeout 을 말하는 것이었다.....

그래서 커넥션 풀링을 적용하면 또 뭔가 되지 않을 까 생각하고 있는 중이다. 럭키비키자나....!!

일단 커넥션 풀링을 나중에 해보고 max_token을 할 게 없는지 한번 찾아보는 중이다만 찾을 수 없었다..

안보인다...

 

커넥션 풀링을 다는 것이 더 우선일 듯 싶다.

다른 곳들 다들 보니까 openai-python 자체에서 connection pooling 을 주는 것 같진 않고

다들 httpx 를 사용해서 커넥션 풀링을 적용하는 것을 보였다.

그래서 httpx 를 통해서 connection pooling 을 적용하는 방법을 한번 찾아본다.

 

https://www.python-httpx.org/

 

HTTPX

HTTPX A next-generation HTTP client for Python. HTTPX is a fully featured HTTP client for Python 3, which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2. Install HTTPX using pip: Now, let's get started: >>> import httpx >>> r = http

www.python-httpx.org

 

 

주..줄였다...! 물론 저기 극단치가 있지만....!! 그래도 0.1 줄였다. 총 0.2나 줄였다...

 

더이상은 못 줄일 것 같다.... 일단 이정도에서 마무리하면 좋을 듯 싶다.

그래도... 3초 후반대니까 괜찮지 않을까.....?


 

 

추가적으로 header 를 받아올수 있는 방식이 있는 듯 하다.

그래서 한번 받아오도록 수정하면 Postman으로 요청을 보낼때 편할 것 같다.