딥시크 서버가 아닌 폐쇄 환경에서 이용하고 싶다면 PC에 설치하면 됩니다. 네트워크 접근도 가능합니다.
채팅 환경은 터미널과 웹UI가 있습니다.
- 올라마 터미널: 설치 및 사용이 매우 간단함. 문서 또는 이미지 대화 어려움.
- 오픈웹UI: 설치 및 설정이 복잡함. 많은 기능을 쉽게 사용할 수 있음.
현재 PC 환경
- RTX2080 Super, 8GB VRAM
- intel i7 10th
- 32GB RAM
설치 전 알아두기
PC에 설치하기 전에, 딥시크의 종류를 알아야 합니다. 딥시크 공식 사이트는 강력한 서버 환경을 보유하고 있기 때문에 최상위 모델이 실행되는 것이며, PC는 하드웨어 성능이 서버에 비해 매우 낮기 때문에 고성능 AI 모델 실행이 불가능합니다. 그래서 필요한 기능과 용량을 선택해야 합니다.
딥시크 사이트에서 오늘 날짜를 물어보면 2023년 10월 10일로 답을 합니다. 오프라인 모델은 2023년 5월 19일입니다. 딥시크 AI는 실시간 업데이트 모델이 아닙니다. 웹 서치 기능을 켜면 바쁘다며 답변을 얻기 어렵습니다.
설치 및 사용에 관련된 명령어는 터미널(윈도우는 명령 프롬프트)에서 실행합니다.
DeekSeek 종류
AI 모델은 용도별로 나뉘어 있으며, 파라미터 크기는 1.5b(15억)부터 671b(6710억)까지 있습니다. 현재 PC 환경에서는 7b까지 매우 빠르게 작동합니다. 14b부터는 반응 속도가 느렸습니다.
DeepSeek-LLM
- 용도: 대규모 데이터 처리, 복잡한 문제 해결, 고급 자연어 이해 및 생성 작업에 특화.
- 특징:
- 매우 큰 규모의 파라미터를 기반으로 높은 성능 제공.
- 복잡한 질문, 창의적 글쓰기, 기술 문서 작성 등에 뛰어남.
- 다양한 언어와 도메인에서 높은 정확성과 유연성.
- 고급 AI 작업(예: 논문 요약, 코드 생성, 멀티턴 대화)에 적합.
- 장점: 복잡하고 다양한 작업에서 최고 수준의 성능을 발휘.
- 단점: 리소스 소모가 크고, 간단한 작업에는 과적합될 수 있음.
DeepSeek-R1
- 용도: 특정 작업(예: 연구, 데이터 분석, 복잡한 문제 해결)에 특화된 모델.
- 특징:
- 고도로 전문화된 작업에 적합.
- 복잡한 데이터 처리 및 분석에 뛰어남.
- 연구 및 기술 분야에서 높은 정확성 제공.
- 일반 대화보다는 전문적인 작업에 초점.
- 장점: 전문 분야에서 높은 성능을 발휘하며, 복잡한 문제 해결에 적합.
- 단점: 일반적인 대화나 간단한 작업에는 과적합될 수 있음.
DeepSeek-V2
- 용도: 기본적인 질문과 대화에 적합.
- 특징:
- V3보다 기능이 제한적이지만 여전히 유용.
- 일반적인 작업에 충분한 성능 제공.
- 장점: 간단한 작업에 효율적.
- 단점: 복잡한 작업이나 전문 분야에서는 성능이 부족.
DeepSeek-V3
deekseek 사이트에서 실행 중인 모델은 V3로 617b 한 가지입니다. 용량만 404GB이며 각 토큰의 37b가 모인 혼합 모델입니다. 고성능의 하드웨어를 필요로 합니다.
- 용도: 일반적인 질문, 대화, 창의적 작업, 정보 검색 등 다양한 작업에 적합.
- 특징:
- 높은 정확성과 자연스러운 응답.
- 다양한 주제와 작업을 지원.
- 사용자 친화적이며 범용성이 높음.
- 장점: 다양한 작업에 유연하게 적용 가능.
- 단점: 특정 전문 분야에서는 R1보다 성능이 떨어질 수 있음.
DeepSeek-Coder-V2
- 용도: DeepSeek-Coder의 업그레이드 버전으로, 더 복잡하고 고급 프로그래밍 작업에 특화.
- 특징:
- 향상된 코드 생성 능력: 더 정확하고 효율적인 코드 생성.
- 고급 디버깅 및 리팩토링: 복잡한 코드의 오류를 더 잘 찾아내고 최적화.
- 더 많은 언어 지원: 새로운 프로그래밍 언어 및 프레임워크 지원 추가.
- 컨텍스트 이해 강화: 더 긴 코드 조각을 이해하고 처리할 수 있음.
- 성능 최적화: 더 빠르고 정확한 응답.
- 장점: 고급 개발 작업에 적합하며, 초기 버전보다 더 강력하고 유연함.
- 단점: 초보자에게는 기능이 과도할 수 있음.
모델 선택 가이드
- 고급 및 복잡한 작업(대규모 데이터 처리, 논문 작성, 코드 생성 등): DeepSeek-LLM 추천.
- 전문적인 작업(연구, 데이터 분석 등): DeepSeek-R1 추천.
- 다양한 작업(일반 대화, 창의적 작업 등): DeepSeek-V3 추천.
- 기본적인 작업(간단한 질문, 대화 등): DeepSeek-V2 추천.
- 매우 간단한 작업: DeepSeek-V1 추천.
- 기본적인 코드 작업(초보자~중급자): DeepSeek-Coder 추천.
- 간단한 코드 생성, 기본 디버깅, 학습용으로 적합.
- 고급 코드 작업(중급자~전문가): DeepSeek-Coder-V2 추천.
- 복잡한 코드 생성, 고급 디버깅, 리팩토링, 최적화에 적합.
설치하기
Ollama 설치
올라마는 대량의 언어 모델을 로컬 머신에서 사용할 수 있는 강력한 도구입니다.
위 사이트에 접속하여 Download 버튼을 눌러 설치 파일을 내려받고 설치를 완료합니다.
언어 모델 설치
검색
https://ollama.com/search?q=deepseek
위 페이지처럼 필요한 언어 모델을 검색하고 설치할 모델을 클릭합니다.
파라미터 크기
파란색 태그 문자는 파라미터 크기를 나타냅니다. R1을 설치한다면 1.5b부터 671b까지 다양하게 준비되어 있습니다.
1.5b는 1.1GB, 671b는 404GB입니다.
설치 명령어
특정 태그를 선택하면 설치 명령어가 나타납니다.
복사 아이콘을 눌러 복사 후, 터미널에서 실행하면 설치됩니다.
run은 모델을 실행하라는 옵션이며, 모델이 없으면 자동으로 설치됩니다.
모델 실행
올라마에는 여러 모델을 설치할 수 있습니다. 모델을 실행하려면 설치명령처럼 run 옵션을 사용해서 모델을 지정하면 됩니다.
ollama run deepseek-r1
도커 설치
WebUI로 AI를 이용하려면 가상 머신을 설치해야 합니다.
다양한 가상환경 중에 익숙한 도커를 설치합니다. NAS에서도 많이 사용하는 컨테이너 매니저가 도커~
https://docs.docker.com/desktop/setup/install/windows-install/
위 사이트에서 도커를 내려받아 설치를 완료합니다. 설치 과정 중 옵션 화면에서 WSL(기본값)을 선택하면 됩니다.
OpenWebUI 설치
다음 명령어를 실행합니다.
docker pull ghcr.io/open-webui/open-webui:cuda
main은 CPU만 사용하는 모델이며 간단한 사용에 적합합니다. nVidia RTX시리즈를 사용하기 때문에 cuda로 설치합니다.
도커에서 컨테이너 실행
아래 명령어로 컨테이너를 실행합니다.
docker run -d -p 3000:8080 --gpus all -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:cuda
컨테이너 설정을 보면 "USE_CUDA_DOCKER=true" 로 쿠다가 활성화된 것을 알 수 있습니다.
3000:8080은 로컬의 3000 포트를 컨테이너의 8080 포트에 포워딩한다는 설정입니다. 로컬 포트는 원하는 포트로 변경하면 됩니다.
포트 연결하기
도커에서 로컬 포트와 컨네이터 포트를 연결할 때 권한 오류가 발생하면 다음 순서대로 실행하면 됩니다.
net stop winnat
도커 컨테이너 실행
net start winnat
모델 사용
DeepSeek-R1
무언가 입력하면 생각 중이라는 안내와 함께 DeepSeek가 무슨 생각을 하는지 보여줍니다. DeepSeek 웹이나 앱에서는 딥씽크(R1)를 활성화하면 됩니다. 사용자가 무슨 질문을 하는 걸까? 왜 질문을 하는 걸까? 이전 질문과 무슨 연관일까? 어떤 답을 해야 할까? 등, 여러 생각을 하면서 최종적으로 정리된 결과를 보여줍니다. 정해진 답이 아닌 생각과 판단을 하는 것이 AI입니다.
DeepSeek-Coder
딥시크 코더 모델에 프로그래밍 언어인 C#을 코딩해 달라고 했습니다.
먼저 ollama run deepseek-coder-v2 명령어로 해당 모델을 실행합니다. 그다음 >>> 프롬프트에 문장을 입력합니다.
```와 ` 기호는 마크다운 키워드이며 코드를 번역하지 않고 그대로 출력할 때 사용합니다. 터미널이기 때문에 텍스트로 출력됩니다.
종료는 Ctrl+D 키를 누르면 됩니다.
옵션
올라마 프롬프트에서 /set verbose 명령을 입력하면 답변 마지막에 LLM 스탯을 보여줍니다.
total duration: 12.3902184s
load duration: 19.0883ms
prompt eval count: 218 token(s)
prompt eval duration: 152ms
prompt eval rate: 1434.21 tokens/s
eval count: 589 token(s)
eval duration: 12.212s
eval rate: 48.23 tokens/s
위와 같이 답을 하는데 소요된 시간과 토큰 수, 처리 속도를 알 수 있습니다.
OpenWebUI에서 딥시크 사용하기
공식 사이트처럼 브라우저로 실행할 수 있습니다. 그래야 문서나 이미지를 첨부하여 대화할 수 있습니다. OWUI에서의 대화는 터미널의 대화보다 반응이 상당히 느립니다.
OpenWebUI에서는 설치된 모델 외에도 외부 AI 모델을 사용할 수 있습니다. 모델은 설정에서 켜거나 끌 수 있습니다.
DeepSeek-Coder
이번엔 C++ 클래스 사용법을 물어봅니다. AI 모델에서 deepseek-coder-v2를 선택합니다.
WebUI는 컬러풀하게 답변해줍니다.