23.06.15
DEVOTEE를 활성화 시키면
지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.
버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.
| 컨텐츠 유형 | 제목 | 저장일 | 삭제 |
|---|
본인인증 로그인에 실패하였습니다.
회원이 아니시거나 본인인증 등록이
완료되지 않은 사용자입니다.
안녕하세요 SK 하이닉스 김성진 입니다.
chatGPT 혹은 언어 모델들을 사용할때 보안적인 측면과 LLM 이 가지고올 새로운 미래 가치 사이에서 많은 고민을 하게 됩니다.
왜 chatGPT 같은 서비스를 사용하면 보안에 대해 걱정해야할까요?
먼저, chatGPT 는 기본적으로 chatGPT 에 질문된 Data 들이 학습의 성능을 향상시키기 위해 사용 될 수 있다고 명시해두었습니다.
내 Data가 어떤 식으로든 유출될 수도 있다는 점을 걱정하지 않을 수 없는데요.
(출처 : https://help.openai.com/en/articles/7039943-data-usage-for-consumer-services-faq )
이렇게 정보 보호와 LLM을 활용한 다양한 가능성 사이에서 고민할때 PrivateGPT 라는 매력적인 모델을 사용해본 후기를 남겨보겠습니다.
PrivateGPT의 소개는 Devocean의 일일 Tech News & Blog (23.05.24) 에서도 찾을 수 있습니다.
(출처 : https://devocean.sk.com/blog/techBoardDetail.do?ID=164938 )
기본적인 concept는 학습된 Model을 가지고 Local에 존재하는 Document( PPT, Excel, Notion 등 다양한 Local 문서)를 활용하여 private 한 서비스를 만드는것 입니다.
공식 Document 에는 100% private, no data leaves your execution environment at any point. 이라고 작성되어 있습니다. ( https://docs.privategpt.dev )
Local 에 저장된 Model과 document 만 사용하기 때문에 정말 Private한 서비스라고 되어 있습니다.
간단하게 Installation steps 에 따라 제 Local 에 설치해보도록 하겠습니다.
( https://docs.privategpt.dev/#section/Quick-Local-Installation-steps )
먼저 소스를 git에서 다운 받습니다.
git clone https://github.com/imartinez/privateGPT
cd privateGPTpython 버전을 설치 가이드 대로 3.11로 맞춰 줍니다.
pyenv install 3.11
pyenv local 3.11dependency management를 위해 Poetry 도 필요하다고 하니 같이 설치해주겠습니다.
curl -sSL https://install.python-poetry.org | python3 -그리고 privateGPT 소스를 내려받은 위치로 이동 해서 필요한 dependency를 다운 받겠습니다.
poetry install --with local가이드에 따라 잘 설치 중인지 확인하기 위해 make run 을 실행하여 웹서버가 start 되는지 잠깐 확인하고 넘어가봅니다.
일단 빈 통이지만, 가이드대로 잘 따라가고 있는걸로 확인됩니다.
다양한 옵션이 있지만 default option 만 해도 100% local setting 이라는 가이드를 믿고 SKIP 하고 바로 다음으로 넘어갑니다.
그럼 이제 default 설정에 따른 LLM 모델을 다운 받아보겠습니다.
poetry run python scripts/setup기본 설정으로는 아래 모델을 다운받게 됩니다.
https://huggingface.co/TheBloke/Mistral-7B-Instruct-v0.1-GGUF
(가이드에서는 llama-cpp 에 대해 정확히 이해하고 넘어가라고 조언합니다. 오늘은 설치와 사용관점에 집중해보겠습니다.)
그리고 맥을 사용중일 경우 아래 코드 실행이 필요한데요. 저는 이부분에서 조금 고생했습니다.
CMAKE_ARGS="-DLLAMA_METAL=on" pip install --force-reinstall --no-cache-dir llama-cpp-pythonApple Chip 이든 Intel Chips 든 segementation fault 에러가 발생할 경우 아래 링크를 참고해서 하나씩 진행해보고 본인 환경에 맞는 조건으로 변경이 필요합니다.
해당 에러는 현재 local PC 상황이 GPU 사용이 어려워 발생하는 에러로 CPU 로 실행하도록 조치가 필요합니다.
https://github.com/imartinez/privateGPT/issues/1182#issuecomment-1814179193
저는 아래 가이드로 해결했습니다.
이제 준비가 완료되었고 privateGPT 서비스를 위한 로컬 서버를 실행해보겠습니다.
PGPT_PROFILES=local make runCPU 에서 실행되기 때문에 인사 한번도 오래 걸리네요.
그럼에도 인터넷이 없는 상황에서도 나만의 GPT 와 인사할 수 있다는건 큰 장점일것 같습니다.
사실 겨우 인사하려고 privateGPT를 설치해본건 아니죠.
제가 가진 문서 하나를 upload 해서 관련 질문을 해보겠습니다.
Upload a File 버튼을 클릭해서 https://cdn.openai.com/papers/gpt-4.pdf 에서 다운받은 pdf 파일 하나를 올려보겠습니다.
파일 업로드시 로컬 서버에서는 문서 parsing 과 Generating embeddings 라는 작업이 진행됩니다.
방금 업로드한 파일 기준으로 질문을 해보겠습니다.
according to GPT4 document, what is the major benefit of GPT4,and where in the document is it explained?
많이 만족스러운 답변은 아닐 수도 있습니다.
한국어로 된 문서로도 잘 대답하는지 한번 파일을 Upload하고 진행해보겠습니다.
통계청에서 제공하는 (보도자료)세계와 한국의 인구현황 및 전망.pdf 파일을 upload하여 한국의 인구 전망을 pdf 파일 기준으로 잘 대답하는지 확인해보겠습니다.
아쉽지만 한글 파일은 Generating Embeddings 작업이 진행되지 않고 파일이 정상 Ingest 되지 않네요.
UTF-8 로 인코딩된 파일은 현재 버전의 privateGPT에서 정상 처리가 안되는 걸로 확인됩니다.
PrivateGPT 라는 오픈소스로 privateGPT 서비스를 로컬환경에서 설치하고 사용해보았습니다.
현재 수준에서는 아직 실제 서비스로 사용하기에는 많은 어려움이 있겠지만,
쉬운 설치와 간단한 파일 ingest 라는 개념은 앞으로 나올 GPT 서비스들의 다양한 방향성 중 하나가 될 수 있다고 생각합니다.
pdf 파일을 올리고, excel 파일을 올려서 chatGPT 와 작업하는 행위는 현재 chatGPT의 plug-in으로도 충분히 가능하겠지만,
내 데이터를 plug-in 서비스 제공자에게 먼저 제출해야한다는 점은 항상 부담입니다.
그런점에서 내 local 혹은 내 서버에서 나만의 데이터로 특화된 GPT 서비스를 만들어내는건 큰 장점이 아닐까 합니다.
특히 기업내 존재하는 다양한 데이터를 활용하여 Employee Knowledge search 를 위한 AI 모델처럼 Data를 보호 하면서 Specialized LLM 을 제공할 수 있다는 점은 매력적일것 같습니다.
이제 글을 마무리하려고 합니다. 제가 경험한 내용과 제 생각을 남겼지만,
이 글을 읽으신 분들의 생각도 궁금합니다.
OpenAI 가 chatGPT 와 연계해서 새로운 서비스들, 새로운 비지니스로 확장하고 있지만,
PrivateGPT 라는 서비스에 대해 여러분들은 어떻게 생각하시나요?
DEVOTEE를 활성화 시키면
지금 작성한 댓글에 AI가 댓글을 달아줍니다.