728x90 반응형 프로그램 개발해서 돈벌기165 초보자가 오픈 소스 LLM을 이용해서 나만의 챗봇 만들기 LLM은 Large Language Models의 약자입니다. 보통 Chat GPT를 많이 알고 있습니다. Chat GPT와 오픈 소스 LLM 차이점은 뭘까요? 오픈 소스 LLM은 모델을 다운로드하여 내가 학습을 시키고 내가 원하는 용도로 만들어 쓸 수 있는 자유도가 높습니다. 물론 Chat GPT도 API 형식으로 프로그래밍을 지원합니다. 그러나 질문과 답변 정보가 Open AI 회사에 있게 되겠죠? 그걸 싫어하는 사람들은 자신의 PC나 회사 서버에 설치해서 사용하고 싶어 할 겁니다. 우선 용어 초보자가 알아야 할 용어들이 있습니다. 생성 AI 인공지능과 생성 인공지능의 차이점은 무엇일까? 최근까지 인공지능은 대량의 데이터를 분석하고 통찰력 있는 예측을 내리는 데 일반적으로 적용되었습니다. 좀 더 구체.. 2024. 1. 2. Google AI Studio에서 제미니(Gemini) API를 이용해서 Colab에서 파이션으로 사용해 보기 Google AI Studio에서 Freeform prompt에서 "로마 시저를 알려줘"로 프로프트를 작성했습니다. 그림 1. 과 같이 시저에 대한 정보를 알려 줍니다. 위 동작은 Google AI Studio 외에서도 프로그래밍으로 동작 가능합니다. 그림 1. 우측 상단 Get code를 클릭합니다. 해당 프롬프트에 대한 코드가 보입니다. 여러 소스 코드가 보입니다. 파이션으로 진행해 보겠습니다. 우측 상단 Open in Colab을 클릭해서 해당 코드를 Colab으로 실행해 보겠습니다. * Colab으로 이동 전에 그림 1. 좌측 메뉴에 열쇠 모양 아이콘을 클릭해서 키를 받아 놓아야 합니다. 그림 3. 은 Colab을 실행한 화면입니다. 코드 옆 숫자에 마우스를 가져가면 숫자가 플레이 버튼으로 변경됩.. 2023. 12. 20. 안드로이드에서 startService, startForegroundService 사용과 중복 실행 방지를 예제로 설명 안드로이드에서 startService 및 startForegroundService 메서드는 서비스를 시작하는 데 사용되는 메서드입니다. 이 두 메서드의 차이점은 Android 8.0 (Oreo)부터 도입된 백그라운드 실행 제한에 있습니다. startService: 서비스를 시작하며, 서비스가 시작된 후에 해당 서비스가 백그라운드에서 실행되는 한 시스템이 종료시키지 않습니다. 그러나 이 메서드를 사용하면 서비스가 포그라운드 서비스로 시작되지 않으므로, 서비스가 백그라운드에서 실행 중이더라도 일정 시간이 지나면 시스템에 의해 종료될 수 있습니다. startForegroundService: Android 8.0 이상에서 도입된 메서드로, 포그라운드 서비스로 서비스를 시작합니다. 포그라운드 서비스는 사용자에게 .. 2023. 12. 8. tvOS에서 화면 좌우(왼쪽, 오른쪽) 화면 분할 및 오른쪽 뷰 포커싱 시 왼쪽 뷰 폭 조정 tvOS에서 좌우로 화면을 분할할 수 있습니다. 뷰 내 두개 뷰를 포함해서 작업할 수 있습니다. 그리고 좌우 뷰 포커싱에 이벤트를 받아서 처리할 수 있습니다. 이 경우 오른쪽 뷰에 포커싱이 갔을때 왼쪽 뷰 폭을 줄입니다.(그림 2.) 그리고 다시 왼쪽 뷰로 포커싱되면 원래 크기로 폭을 늘립니다.(그림 1.) 소스 코드 import SwiftUI struct ContentView: View { @State private var leftViewWidth: CGFloat = 300 var body: some View { HStack { // 왼쪽 뷰 LeftView(onLeftButtonTap: { // 포커싱이 발생하면 왼쪽 뷰 크기를 조절 withAnimation { if(leftViewWidth == 1.. 2023. 11. 23. [Swift] SwiftUI에서 두 개 뷰에서 @Published, ObservableObject, @StateObjec, @EnvironmentObject를 이용한 데이터 Combine 사용하기 Combine을 사용하는 가장 쉬운 방법 중 하나로, ObservableObject 프로토콜 클래스에서 사용될 때 자동으로 데이터 변경을 추적해 업데이트를 처리합니다. [동작 요약] ObservableObject 클래스 내에서 @Published 속성 래퍼를 사용합니다. @Published 속성은 변경되는 사항을 등록한 모든 View에 알립니다. View는 @StateObject 프로퍼티 래퍼를 사용해 이 ObservableObject와 연결합니다. 한 개 뷰에서 Combine 예제 import SwiftUI // ObservableObject 프로토콜을 채택하는 데이터 모델 클래스 class MyDataModel: ObservableObject { // @Published 속성을 사용하여 데이터 변경을.. 2023. 11. 23. SwiftUI에서 Class와 Struct 특징 및 차이점 결론부터 보면 Class는 참조타입이고 ARC로 메모리 관리를 합니다. 그리고 Struct는 값 타입입니다. 참조와 값에 대한 설명은 아래 글을 참고 바랍니다. 2023.11.19 - [프로그램 개발해서 돈벌기/iOS] - 메모리에 표시되는 값 형식과 참조 형식 메모리에 표시되는 값 형식과 참조 형식 값 형식 정수, 실수, 불린, 문자와 같은 기본 자료형과 구조체, 열거형은 값 형식으로 분류합니다. 값 형식으로 선언된 값은 메모리의 스택 영역에 저장됩니다. var a = 10 값 형식으로 저장된 값을 direction-to-money.tistory.com Class와 Struct 공통점 값을 저장할 프로퍼티를 선언할 수 있습니다. 함수적 기능을 하는 메서드를 선언할 수 있습니다. 내부 값에 .을 사용하여.. 2023. 11. 22. 이전 1 2 3 4 5 6 7 ··· 28 다음 728x90 반응형