Programming
🔹 Gemini Gemini는 Google이 개발한 멀티모달 인공지능(AI)입니다. 텍스트, 오디오, 이미지, 비디오 등 다양한 입출력을 지원하는 것이 특징입니다. Gemini는 1조 개의 파라미터를 가진 대규모 언어 모델(LLM)입니다. 이는 OpenAI의 GPT-3.5나 네이버의 하이퍼클로바보다 많은 수치입니다. 파라미터의 수가 많을수록 모델이 더 복잡하고 유연해져 다양한 작업을 수행할 수 있다는데 사용자 입장에서 아직은 서로 누가 더 좋은지 판단하기는 어려워 보입니다. (당연히 서로가 좋다고 합니다) Google Bard에서 미국버전으로 사용하면 Gemini 모델이 답변해준다고 합니다. 특이하게(?) Gemini API가 특정 한도에서 무료라 사용해 보겠습니다. 🔹 Gemini API 사용하기 1...
📝이전글 [Fixture Monkey] 픽스쳐 몽키로 테스트 코드 작성하기 (Java Spring) 🔹 환경 설정 공식문서를 보면 아래 라이브러리가 필요하다고 합니다. fixture-monkey-starter에 이미 포함되어있어 추가하지 않아도 됩니다. testImplementation("com.navercorp.fixturemonkey:fixture-monkey-jakarta-validation:1.0.0") 🔹 테스트 코드 만들기 1. 테스트할 객체 만들기 의미없는 객체로 테스트하는것은 재미없어, Entity 객체를 만들고 Repository 기능이 잘 동작하는지 테스트해보겠습니다. 테스트를 위해 DB 등 설정이 필요한데, 어렵다면 @Entity를 제거하고 사용하셔도됩니다. @Getter @NoArg..
🔹 Fixture Monkey * 공식 깃헙 : https://github.com/naver/fixture-monkey * 공식 홈피: https://naver.github.io/fixture-monkey/ Fixture Monkey naver.github.io 기술블로그를 보다가 정식 버전이 출시되었다고 하여 한번 찍먹해보겠습니다. (블로그 링크) 우선 공식 홈피에서 설명을 한번 읽어보았습니다. Fixture Monkey는 제어 가능한 임의의 테스트 객체를 생성하도록 설계된 Java 및 Kotlin 라이브러리입니다. 필요한 테스트 픽스처를 쉽게 생성하여 테스트 작성을 간소화하는 데 중점을 둡니다. 기본적인 테스트 픽스처를 다루든 복잡한 테스트 픽스처를 다루든, Fixture Monkey를 사용하면 필요..
🔹 AWS whisperer * 공식 소개 : https://docs.aws.amazon.com/ko_kr/codewhisperer/latest/userguide/what-is-cwspr.html What is CodeWhisperer? - CodeWhisperer What is CodeWhisperer? Amazon CodeWhisperer is a general purpose, machine learning-powered code generator that provides you with code recommendations in real time. As you write code, CodeWhisperer automatically generates suggestions based on your ex..
🔹 AWS whisperer * 공식 소개 : https://docs.aws.amazon.com/ko_kr/codewhisperer/latest/userguide/what-is-cwspr.html What is CodeWhisperer? - CodeWhisperer What is CodeWhisperer? Amazon CodeWhisperer is a general purpose, machine learning-powered code generator that provides you with code recommendations in real time. As you write code, CodeWhisperer automatically generates suggestions based on your ex..
🔹 허깅페이스 API Hugging Face는 다양한 NLP 모델과 도구를 개발하고 공유함으로써 개발자들이 쉽게 NLP 기술을 활용할 수 있도록 지원합니다. Hugging Face의 API 서비스를 사용하면 다양한 사전 훈련된 언어 모델을 활용할 수 있으며, 이러한 모델은 대규모 데이터셋에서 사전에 학습된 상태로 제공됩니다. Hugging Face Model Hub에는 다양한 종류의 언어 모델이 포함되어 있습니다. 이러한 모델들은 이미 대량의 데이터셋으로 사전 훈련되었기 때문에 일반적인 자연어 처리 작업에 사용할 수 있습니다. API를 통해 Hugging Face에서 제공하는 미리 학습된 AI 모델을 호출하고 사용할 수 있습니다. 예를 들면, 문장 분류, 감성 분석, 기계 번역, 질문-답변 등과 같은 작..
🔹 Functor란 Functor는 함수처럼 동작하는 객체를 의미합니다. C++에서 함수 포인터를 이용해 함수를 전달할 수 있지만, Functor는 함수 포인터보다 유연성이 높고 객체 지향적인 설계를 할 수 있도록 도와줍니다. struct와 class 모두 사용가능하고, 아래 예시에서는 간결함을 위해 struct를 사용했습니다. struct Adder { int operator()(int a, int b) { return a + b; } }; int main() { Adder add; int result = add(3, 4); // result는 7이 됩니다. return 0; } 이런식으로 객체에 함수를 정의하여 사용할 수 있는게 functor의 가장 기본입니다. 🔹 Functor을 사용하는 경우 1...
🔹 Template란 C++에서 템플릿(Template)은 함수나 클래스의 정의에서 데이터 타입에 대한 매개변수화를 허용하는 기능입니다. 즉, 템플릿은 클래스나 함수를 작성할 때, 데이터 타입이나 상수 값을 매개변수로 받아서, 자동으로 여러 개의 타입이나 값에 동작하도록 하는 기능입니다. 템플릿을 사용하면, 코드의 재사용성과 유지보수성이 향상됩니다. 또한, 템플릿을 사용하여 제네릭(Generic) 프로그래밍을 할 수 있으며, 이는 STL(Standard Template Library)에서 매우 널리 사용됩니다. 🔹 Template 사용 예시 아래와 같이 Template를 정의하겠습니다. template void print(T arg) { std::cout
🔹 요약 C++에서 struct와 class는 모두 사용자 데이터 타입을 정의할 때 사용됩니다. 둘 다 데이터 멤버와 함수를 가질 수 있습니다. 그러나 일반적으로 struct는 데이터의 집합체로 사용되며, class는 객체 지향 프로그래밍에서 객체의 정의를 위해 사용됩니다. struct와 class의 주요 차이점은 기본 접근 제어 수준입니다. struct는 기본적으로 public으로 정의되며, class는 기본적으로 private으로 정의됩니다. 이것은 struct는 멤버 변수 및 함수가 외부에서 쉽게 액세스 될 수 있지만, class는 멤버 변수 및 함수에 대한 직접적인 액세스를 제한합니다. 또한, class는 상속, 다형성 및 캡슐화와 같은 객체 지향 개념을 더 잘 지원합니다. 이러한 이유로, 클래스..