본문 바로가기

분류 전체보기

(11)
AI가 엉뚱한 말을 지어낸다고요? 이렇게 잡으세요 — 프롬프트 엔지니어링 3편 1편과 2편에서 프롬프트를 잘 쓰는 법을 배웠다면, 이번엔 더 잘 쓰는 법을 다뤄요.좋은 프롬프트를 만들었다고 끝이 아니에요. 두 가지를 비교해서 더 나은 걸 고르고, 불필요한 부분을 걷어내고, AI가 없는 내용을 그럴듯하게 지어내는 걸 막아야 해요. 이 세 가지가 이번 편의 주제예요.A/B 테스트로 더 나은 프롬프트 고르기프롬프트를 두 가지 버전으로 써서 결과를 비교하는 방법이에요. "이게 더 나을 것 같다"는 감보다 실제 결과를 놓고 고르는 게 훨씬 정확하거든요.카페 인스타그램 홍보 문구를 예로 들어볼게요.A 프롬프트 ❌카페 라테 홍보 문구 써줘.A 결과:고소하고 부드러운 라테를 즐겨보세요. 매일 신선하게 만듭니다.B 프롬프트 ✅당신은 감성 카페 SNS 마케터입니다.퇴근 후 지친 30대가 공감할 수 ..
매번 같은 조건 반복하기 귀찮으셨죠? 시스템 프롬프트로 해결하세요 — 프롬프트 엔지니어링 2편 1편에서 Zero-shot, Few-shot, Chain of Thought를 다뤘어요. 이번엔 한 단계 더 나아갑니다.AI를 쓰다 보면 이런 생각이 드실 때가 있어요."매번 '당신은 카페 전문가입니다, 친근한 말투로, 두 줄 이내로' 반복하는 게 너무 귀찮은데..."그 귀찮음을 해결하는 게 바로 시스템 프롬프트예요. 여기에 더해서 AI를 더 정밀하게 다루는 고급 기법 다섯 가지도 함께 정리했습니다.시스템 프롬프트란 뭔가요?일반 프롬프트가 그때그때 지시라면, 시스템 프롬프트는 대화를 시작하기 전에 AI의 성격과 역할을 미리 고정해두는 것이에요.신입 직원을 처음 채용하면 업무 방식, 말투, 금지 사항을 교육하잖아요. 이후에는 "이거 해줘"라고만 해도 알아서 움직이죠. 시스템 프롬프트가 그 역할이에요.카페에..
ChatGPT한테 원하는 답 못 받는 이유, 드디어 알았습니다 — 프롬프트 엔지니어링 1편 솔직히 말씀드리면, 처음 ChatGPT를 썼을 때 실망했어요."오늘 점심 뭐 먹을까?"라고 물었더니 "균형 잡힌 식사를 추천합니다"라는 교과서 같은 답이 돌아왔거든요. 옆에서 같은 AI를 쓰던 동료는 원하는 답을 척척 받아내는데, 저는 왜 이 모양일까 싶었죠.나중에 알고 보니 차이는 AI가 아니었어요. 질문하는 방식이 달랐던 거예요.이걸 프롬프트 엔지니어링이라고 부릅니다. 거창한 이름이지만 결국 "AI한테 원하는 걸 제대로 요청하는 법"이에요. 이번 시리즈에서 그 방법을 처음부터 차근차근 풀어볼게요.프롬프트가 뭔지부터 짚고 가요프롬프트는 AI에게 입력하는 텍스트 전체를 말해요. 질문이든, 지시든, 조건이든 AI에게 타이핑하는 모든 것이 프롬프트예요.AI는 이 프롬프트를 받아서 "다음에 올 가장 그럴듯한 ..
FastAPI + uvicorn 개발하면서 만난 에러 모음 FastAPI로 챗봇 백엔드 만들면서 저도 꽤 삽질했어요.구글 검색해도 잘 안 나오는 것들, 한참 헤맸던 것들 모아서 정리해드릴게요.이 글 하나로 웬만한 초반 에러는 다 해결될 거예요 😄에러 1 — ModuleNotFoundError: No module named 'fastapi'상황: uvicorn 실행했는데 fastapi를 못 찾는다고 함원인: 가상환경 활성화 안 하고 실행한 거예요.# 가상환경 활성화 먼저!source venv/bin/activate # Mac/Linuxvenv\Scripts\activate # Windows# 그 다음 실행uvicorn main:app --reload터미널 프롬프트 앞에 (venv) 표시가 있어야 정상이에요.에러 2 — Address a..
FastAPI로 AI 챗봇 백엔드 만들기 — Gemini 연동 완성 FastAPI로 AI 챗봇 백엔드 만들기 — Gemini 연동 완성지난 글에서 FastAPI 기본 구조를 익혔으니까,이번엔 실제로 Gemini API를 붙여서 동작하는 챗봇 백엔드를 만들어볼게요.이 글 끝나면 Postman이나 브라우저에서 메시지를 보내면AI가 답변을 돌려주는 서버가 완성돼요.만들 것 미리보기POST /chat요청: { "message": "파이썬이 뭔가요?" }응답: { "reply": "파이썬은 ...", "session_id": "abc123" }단순하지만 이게 AI 챗봇 백엔드의 핵심이에요.프로젝트 구조chatbot/├── main.py # 서버 진입점├── .env # API 키└── requirements.txt처음엔 이 정도면 충분해요.1..
FastAPI 입문 — Spring Boot 개발자 눈으로 보기 백엔드 개발자가 AI 쪽으로 넘어오면서 제일 먼저 만나는 게 FastAPI예요.근데 Spring Boot 쓰던 사람 입장에서 보면 처음엔 좀 낯설어요."어? 이게 끝이야? 너무 간단한데?"이 글에서는 Spring Boot랑 비교하면서 FastAPI를 빠르게 이해해볼게요.FastAPI가 뭔가요?FastAPI는 파이썬으로 만드는 웹 API 서버 프레임워크예요.AI 챗봇 백엔드, 머신러닝 모델 서빙 등에 많이 쓰여요.이름에 "Fast"가 붙은 이유가 두 가지예요.개발 속도가 빠름 — 코드량이 Spring Boot 대비 훨씬 적어요실행 속도가 빠름 — 비동기 처리 기반이라 성능이 좋아요Spring Boot vs FastAPI 한눈에 비교항목Spring BootFastAPI언어Java / KotlinPython설..
GPT API vs Gemini API — 뭘 써야 할까요? GPT API vs Gemini API — 뭘 써야 할까요?AI 공부를 시작하면서 가장 많이 받는 질문 중 하나예요."GPT API랑 Gemini API 중에 뭘 써야 해요?"저도 처음에 고민했는데, 결론부터 말하면 목적에 따라 달라요.이 글에서 실제로 두 가지를 써본 입장에서 차이를 정리해드릴게요.일단 둘 다 뭔지부터GPT API — OpenAI에서 만든 API. ChatGPT를 코드로 쓸 수 있게 해줌Gemini API — Google에서 만든 API. 구글 AI Studio에서 발급둘 다 "LLM(대형 언어 모델)을 API로 호출한다"는 개념은 같아요.질문 보내면 → 답변 돌려주는 구조.가장 큰 차이 — 돈솔직히 입문자한테 제일 중요한 건 이거예요.항목GPT APIGemini API무료 사용❌ (크..
Python 문법 핵심만 — C# 개발자가 2시간만에 파악한 것들 C# 개발자로 일하다가 Python 문법을 처음 봤을 때 솔직히 "이거 너무 쉬운 거 아닌가?" 싶었어요.근데 막상 쓰다 보면 C#이랑 미묘하게 달라서 자꾸 실수하는 부분들이 생기더라고요. 오늘은 C# 개발자 눈으로 봤을 때 "이건 알아야 해" 싶은 Python 문법만 추려봤어요.1. 문자열 포맷팅 — f-stringC#에서 문자열 보간은 이렇게 하죠:string name = "잠탱이";int age = 30;Console.WriteLine($"이름: {name}, 나이: {age}");Python f-string도 거의 똑같아요:name = "잠탱이"age = 30print(f"이름: {name}, 나이: {age}")$"" 대신 f"" 예요. 거의 같아서 금방 익숙해져요.2. None — C#의 nu..