본문 바로가기
반응형

Bigdata56

머신러닝/딥러닝 - 무료 ChatGPT/Local LLM 웹 인터페이스 Top 7 OpenAI의 ChatGPT/LLM과 같은 서비스를 개발/학습할 때 Gradio를 이용해서 간단히 만들 수 도 있지만, 이보다 OpenAI와 같은 웹 인터페이스를 제공하는 멋진 템플릿을 활용 할 수 있어서 여기에 5가지 현재 잘나가는 무료 ChatGPT/Local LLM 웹 인터페이스 를 소개해 보고자 한다.0. Gradio text-generation-webuiDownload https://github.com/oobabooga/text-generation-webuiPython을 이용해서 가장 쉽게 만들수 있는 Gradio에 웹 인터페이스를 보다 풍성하게 만들어주는 기능을 한다. 1.ngxson alpaca.cpp-webuiDownload https://github.com/ngxson/alpaca.cpp.. 2024. 6. 8.
LLM/ChatGPT - 나만의 모델 Chatbot-UI에 넣기 위한 구조 이해 OpenSource로 잘 만들어진 mckaywrigley/chatbot-ui: AI chat for every model. (github.com)님 의 chatbot-ui에 나만의 모델을 넣고자 한다면 어떻게 해야할지 요약해보았다. 본 구조는 각 개발자에 따라서 달라질 수 있고, 현재 버전(231009) 이후에 다르게 변경될 수 있다는 점을 이해기 바라며 참고용도로 보시면 좋을 듯 하다.1. 모델 정의types/openai.ts여기에 정의한 모델이 추후 모델 선택에 정리되어 보여지게 된다. 2. 모델 확인pages/api/models.tschatbot-ui는 기본적으로 openai에 사용 가능한 모델이 무엇인지를 확인한 후에 해당 정보로 models 리스트를 만들도록 되어 있다. 처음 실행하면 아무것도 .. 2024. 6. 8.
RNN - Python numpy 기초 코드 실습 딥러닝을 공부한다면, 시작은 RNN부터 하는것이 전체적인 흐름을 이해하는데 큰 도움이 된다.여기에서는 RNN을 파이썬 코드로 작성하는 방식으로 이해해보도록 하겠다.RNN은 Recurrent Neural Network의 약자로, 시퀀스 데이터를 처리하는 데 유용한 인공 신경망의 한 종류이다.RNN은 자연어 처리, 음성 인식, 이미지 캡셔닝 등 다양한 분야에 적용될 수 있으며, RNN은 시간 단계의 입력으로 사용하여, 이전 시간 단계의 출력을 현재 시간적인 의존성을 모델링할 수 있다.RNN을 파이썬으로 구현하는 방법은 여러 가지가 있고, 가장 간단한 방법은 numpy 라이브러리를 사용하는 것이다.numpy는 다차원 배열과 행렬 연산을 지원하는 파이썬 패키지로, numpy를 사용하면 RNN의 순전파와 역전파를.. 2024. 6. 8.
2023년 빅데이터 오픈소스 플랫폼 Top 3 2023년 빅데이터 오픈소스 플랫폼 중 가장 유용한 오픈 소스 플랫폼 3가지를 소개한다.1. Hadoop대규모 데이터 처리에 최적화된 분산 처리 프레임워크로, HDFS(Hadoop Distributed File System)와 MapReduce를 기반으로 하며, 저렴한 비용으로 대규모 데이터를 효율적으로 처리할 수 있어서, 구조화 데이터와 비구조화 데이터를 모두 처리할 수 있으며, 확장성이 뛰어나 대규모 데이터 분석에 적합하다.장점저렴한 비용: 오픈소스 프로젝트이기 때문에 라이선스 비용이 발생하지 않는다. 또한, 하드웨어 요구 사항이 낮기 때문에 저렴한 하드웨어를 사용하여 Hadoop 클러스터를 구축할 수 있다.고성능: 분산 처리를 통해 대규모 데이터를 빠르게 처리할 수 있다.신뢰성: 데이터를 3중으로 .. 2024. 6. 8.
LLM.int8() - Large Language Model (LLM)의 계산 성능을 개선하기 위한 양자화 방법 LLM.int8() 개요LLM.int8()은 Large Language Model (LLM)의 계산 성능을 개선하기 위한 8-bit 양자화 방법이다. 기존의 8-bit 양자화 방법은 성능 저하가 발생하는 문제점이 있었는데, LLM.int8()은 이를 해결하여 LLM의 성능을 유지하면서도 계산 성능을 크게 향상시킬 수 있다 LLM.int8()의 핵심 요소는 vector-wise quantization과 mixed-precision decomposition이다. vector-wise quantization은 텐서 당 여러 개의 scaling constant를 사용하여 outlier의 영향력을 줄이는 방법이다. mixed-precision decomposition은 0.1%의 outlier만 16-bit로 나.. 2024. 6. 8.
LLM - Llama2(라마2) 모델 개인 노트북으로 실행하기(CPU기반) 오늘 발견한 아주 좋은 글이 있어서 여기에 공유해 본다.내용은 라마2 모델을 CPU기반으로 실행할 수 있다는 것이다.요즘 GPU 메모리 부분을 많이 최적화 하고 있는 것으로 알고 있었는데, 이제 CPU+GPU 등 점점 모델들이 최적화 되고 있음을 느끼고 있다.이는 어떻게 가능할까? 여기게 요점 위주로 간단히 정리해보도록 하겠다.관련 내용은 아래에서 확인이 가능하다.Running Llama 2 on CPU Inference Locally for Document Q&A | by Kenneth Leung | Towards Data Science Running Llama 2 on CPU Inference Locally for Document Q&AClearly explained guide for running .. 2024. 6. 8.
Σ σ, ς / 시그마(sigma) - 뜻과 읽는법 ∑(시그마)란 그리스 문자 중 S를 나타내는 대문자로, 합을 표현하기 위해 만들어진 수학적 기호이다.수열의 합을 전에는 Sum의 약자인 S(n) 이런 식으로 사용했는데,  수열의 Sn은 수열의 제1항부터 제n항까지의 합을 의미한다. Sum은 2항부터 n항이라던지, 변수 n에 대하여 3항부터 k항까지의 합을 표현하기가 어려운 문제가 있다. 그래서 ∑(시그마)가 만들어 졌다.시그마의 아래에는 ❶에서 항의 시작하고 시그마의 위에는  ❷ 항의 끝을 표시한다. 그리고 시그마의 오른쪽에 ❸ 항을 더할 대상(또는 일반항)을 표시하면 원하는 합을 표시할 수 있습니다.그림으로 표현하면 아래와 같다. 위 시그마의 의미는 k=1부터 시작해서 k=n까지 F(k)에 대입하여 더하라는 의미이다.즉 계식으로 표현하면, F(1)+F.. 2024. 6. 7.
Hugging Face - model(허깅페이스 모델) download 3가지 방법 가장 쉽지만, 처음은 항상 어려운 법이다. LLM, 딥러닝, 머신러닝을 등을 배우다 보면, 반드시 거치는 허깅페이스 다양한 모델이 존재하고 사용해 볼 수 있는, 유용한 데이터 과학 분야의 사이트라고 할 수 있다. 허깅페이스는 유명한 만큼 인터페이스도 잘 제공해주는데, Python 라이브러리를 꼽을 수 있다. 허깅페이스에서 제공하는 transformers 라이브러리는 데이터 과학을 접했다면 한번쯤을 사용해보았을 도구 이기 때문이다.(현재 transformers 전성시대에 살고 있다.) 그럼 간단히 모델을 어떻게 다운로드하는지 함께 알아보자. 이를 위해서 먼저 huggingface_hub라이브러리를 설치하도록 하자. 1. huggingface_hub 이용 python -m pip install hugging.. 2024. 4. 12.
Python - Databse BLOB 란? 사용법 BLOB(blob)는 Binary Large Object의 약자로써, 보통 기본적으로는 사진과 파일과 같은 블록형 데이터를 저장하는 용도이다. 따라서 Database의 자료 형태 역시 Byte를 기본으로 하고 있어서, 이러한 자료를 저장하는데 최적화 되어 있다고 할 수 있다. 그렇다면 Python에서는 어떻게 사용할 수 있을까? 가장 쉽게는 SQLachemy를 이용하는 방법이 있을 것이다. 1. BLOB 데이터 입력하기 데이터를 입력하기 위해서는 먼저 SQLachemy 는 LargeBinary 라는 타입으로 선언해주는 것이 좋다. 아래는 클래스를 선언하는 예시이다. from sqlalchemy import LargeBinary, MetaData class User(Base): __tablename__ =.. 2024. 3. 7.
반응형