Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 주가예측
- 급등주패턴
- n8n자동화
- 고수익블로그
- 주식지표
- 주식지표매수
- JP모건
- 로또번호생성
- 판매가계산
- n8n소스코드
- 티스토리최적화템플릿
- 주식보조지표
- JP모건CEO
- 로또1등번호예측
- 글쓰기자동화툴
- 자동화툴만들기
- 아마존CEO
- npm
- 숏츠자동화
- 쇼츠자동화
- SEO최적화템플릿
- 매수타점
- 금융파이프라인
- 유트브자동화소스코드
- 매매실패사례
- 성공방정식
- 수익자동화툴
- 주식분석
- AI자동화코딩
- 티스토리포스팅템플릿
Archives
- Today
- Total
핫트레이딩
AI 에이전트 코딩 길라잡이 마크다운 .md(Markdown) 안내서 작성 구조 본문

아래는 AI가 쉽게 이해하고 정확하게 활용할 수 있는 .md(Markdown) 안내서 작성 구조입니다.
AI 모델은 명확한 구획, 계층적 구조, 일관된 제목 체계, 명세 중심의 표현을 가장 잘 이해합니다.
✅ AI가 잘 이해하는 .md 작성 구조
아래 템플릿은 설명서, 가이드, API 문서, 프로그램 매뉴얼 등 다양한 용도에 모두 적용할 수 있습니다.
1. 계층적 제목 구조 및 리스트와 단계 구분 그리고 구분자
- # → 문서 제목
- ## → 주요 섹션 (예: 설치, 사용법, FAQ)
- ### → 하위 섹션 (예: Windows 설치, Mac 설치)
- #### → 세부 단계
- 번호 리스트 : 절차 설명 (1,2,3,4 ...)
- 불릿 리스트 : 특징, 옵션, 참고사항 (- 대시, *별표, +플러스)
- --- 또는 *** 같은 구분선을 활용해 섹션을 나눔
2. 문서 최상단: 메타 정보 블록 (선택)
AI가 문서를 빠르게 스캔해 목적을 이해할 수 있음.
---
title: "재고관리 프로그램 사용자 가이드"
version: "1.0"
last_updated: "2025-01-01"
author: "Your Name"
description: "온라인 쇼핑몰 운영자를 위한 전문 재고 관리 프로그램 사용 설명서"
---
3. 문서 개요 (필수)
문서의 목적과 범위를 짧고 명확하게 서술.
## Overview
이 문서는 재고 관리 프로그램을 사용하기 위한 전체 기능 및 운영 방법을 설명합니다.
대상 독자는 온라인 쇼핑몰 운영자 및 프로그램 관리자입니다.
4. 용어 정의 (매우 추천)
AI가 문서 내 특정 단어를 “정확한 의미로” 이해하도록 도움. (불릿 + 텍스트 강조 형식)
## Definitions
- **SKU**: 재고를 구분하기 위한 유니크 코드
- **Lot Number**: 생산 단위별 관리 번호
- **User Type**: Free / Premium 사용자 구분
## 기능 요약
- **대상 사용자:** 온라인 쇼핑몰 운영자
- **핵심 기능:**
- 재고 등록
- 재고 수정
- 재고 삭제
- 자동 재고 알림
- **지원 플랫폼:** 웹 / 모바일 웹 / 앱
- **데이터 입력값:**
- 상품명
- SKU
- 수량
- 단가
5. 구조적 목차 제공 (필수)
명확한 헤더 계층은 AI가 정보를 검색하기 쉽게 만듦. (번호 리스트 형식)
## Table of Contents
1. Installation
2. User Accounts
3. Inventory Management
4. Inventory Analysis
5. AI Features
6. Error Handling
7. FAQ
6. 기능 설명 템플릿 (AI가 가장 좋아하는 명확한 구조)
하나의 기능을 다음 형식으로 반복해 작성하면 AI가 매우 잘 파악함.
## 기능명: User Accounts
### 목적 (Purpose)
사용자 계정을 생성하고 관리하여 free/premium 사용자를 구분합니다.
### 주요 기능 (Features)
- 회원가입 / 로그인
- 권한 관리
- 결제 및 구독 갱신
### 입력값 (Inputs)
| Parameter | Type | Description |
|----------|------|-------------|
| email | string | 사용자 이메일 |
| password | string | 최소 8자 이상 |
| user_type | enum | free / premium |
### 출력값 (Outputs)
- 사용자 정보 객체
- 오류 메시지
### 예시 (Example)
```json
{
"email": "test@example.com",
"user_type": "premium"
}
7. 절차 설명은 Step 형식으로 (중요)
---
## 7. 절차 설명은 Step 형식으로 (중요)
AI는 절차적 정보를 **번호 리스트**로 작성하면 가장 정확하게 이해합니다.
```md
## Installation Steps
1. Download package
2. Run installer
3. Configure database
4. Execute setup script
8. 코드·환경별 예시 구역 분리 (AI가 특히 잘 이해함)
### Code Example (JavaScript)
```javascript
const user = createUser(email, password);
console.log(user)
9. 예외/오류 케이스 (AI 문서에서 매우 중요)
---
## 9. 예외 / 오류 케이스 (AI 문서에서 매우 중요)
AI는 오류 패턴을 따로 구분해두면 활용도가 높아짐.
```md
## Error Handling
### Common Errors
- `E001`: Invalid email format
- `E002`: Password too short
- `E101`: Unauthorized access
### 해결 방법 (How to Fix)
- 이메일 형식을 확인한다.
- 비밀번호 길이를 8자 이상으로 변경한다.
10. FAQ (AI가 사용자 질문에 답할 때 유용)
## FAQ
**Q. 프리미엄 기능은 어떻게 활성화하나요?**
A. 설정 → 결제 메뉴에서 구독을 활성화합니다.
**Q. 다중 쇼핑몰 연동은 가능한가요?**
A. Premium 사용자만 가능합니다.
🎯 최종 요약: AI가 이해하는 Markdown 핵심 원칙
원칙 설명
| 명확한 헤더 구조 | H1 → H2 → H3 순서대로 섹션이 잘 구분되어야 함 |
| 용어 정의 | 전문 용어는 반드시 정의해두기 |
| 표 형태의 Input/Output 기술 | AI가 기능을 정밀하게 이해함 |
| 예시(Example) 제공 | JSON·코드 샘플 제공 시 이해도 상승 |
| Step-by-step 절차 | 순서형 리스트는 AI 이해에 매우 효과적 |
| 오류 케이스 따로 분류 | AI가 문제 해결에 쉽게 적용함 |
| 반복 패턴 구조 유지 | 기능별 템플릿을 동일하게 유지 |
아래는 구글 오팔에서 에이전트용 유튜브 쇼츠 완전 자동화 워크플로우 시스템 안내서 마크다운 문서
구글 Opal용 유튜브 쇼츠 완전 자동화 워크플로우 자연어 프롬프트
출처: https://hot-t.tistory.com/106 [핫트레이딩:티스토리]
# Google Opal 에이전트용 YouTube Shorts 자동화 시스템 안내서
이 문서는 Google Opal 플랫폼에서 YouTube Shorts 자동화 시스템을 실행하기 위한 각 에이전트별 자연어 안내서입니다.
---
## 📌 전체 시스템 개요
이 시스템은 YouTube Shorts를 완전 자동으로 제작하고 업로드하는 시스템입니다. 총 10개의 전문 에이전트가 협력하여 작업합니다.
**작업 흐름**:
1. 트렌드 분석 → 2. 콘텐츠 기획 → 3. 음성/영상/썸네일 생성 → 4. 자막 생성 → 5. 영상 합성 → 6. YouTube 업로드 → 7. 성과 분석 → 8. 전략 최적화
---
## 🤖 에이전트 1: 트렌드 분석 전문가
### 역할
한국 유튜브 쇼츠 트렌드를 실시간으로 분석하고 수집하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. 6시간마다 자동으로 트렌드 분석을 실행합니다.
2. Perplexity AI API를 사용하여 한국 유튜브 쇼츠 트렌드를 수집합니다.
3. 수집한 트렌드를 분석하고 필터링합니다.
4. 결과를 다음 에이전트에게 전달합니다.
**구체적 작업 단계**:
**1단계: Perplexity API 호출**
- API URL: `https://api.perplexity.ai/chat/completions`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: Bearer YOUR_PERPLEXITY_API_KEY` 추가
- 요청 본문 (JSON):
```json
{
"model": "llama-3.1-sonar-large-128k-online",
"messages": [
{
"role": "system",
"content": "당신은 실시간 한국 트렌드 분석 전문가입니다."
},
{
"role": "user",
"content": "현재 한국에서 인기있는 유튜브 쇼츠 트렌드 키워드 10개를 찾아서 각각의 맥락과 함께 JSON 형식으로 제공하세요. 형식: {trends: [{keyword: '', context: '', viralScore: 0-100}]}"
}
]
}
```
**2단계: 응답 파싱**
- API 응답에서 JSON 형식의 트렌드 데이터를 추출합니다.
- 응답 구조: `response.choices[0].message.content`에서 JSON을 찾습니다.
- JSON 패턴 매칭: `/\{[\s\S]*\}/` 정규식으로 JSON 추출
**3단계: 트렌드 필터링**
- 바이럴 점수(viralScore)가 70 이상인 트렌드만 선택합니다.
- 상위 5개 트렌드만 선택합니다.
- 각 트렌드에 대해 다음 정보를 포함합니다:
- `trendKeyword`: 트렌드 키워드
- `trendContext`: 트렌드 맥락
- `viralScore`: 바이럴 점수 (0-100)
- `scannedAt`: 스캔 시간 (ISO 형식)
**4단계: 오류 처리**
- API 호출 실패 시 기본 트렌드 3개를 사용합니다:
- `일상 브이로그` (점수: 60)
- `꿀팁` (점수: 70)
- `챌린지` (점수: 80)
- JSON 파싱 실패 시에도 기본 트렌드를 반환합니다.
**5단계: 결과 전달**
- 필터링된 트렌드 목록을 다음 에이전트(콘텐츠 기획 전문가)에게 전달합니다.
- 각 트렌드는 별도의 데이터 항목으로 전달합니다.
### 출력 형식
```json
{
"trendKeyword": "일상 브이로그",
"trendContext": "일상 공유",
"viralScore": 75,
"scannedAt": "2024-01-01T12:00:00.000Z"
}
```
### 주의사항
- API 키는 안전하게 보관하고 노출하지 않습니다.
- 6시간마다 자동 실행되므로 수동 트리거는 필요 없습니다.
- 트렌드가 없거나 부족한 경우 기본값을 사용합니다.
---
## 🤖 에이전트 2: 콘텐츠 기획 전문가
### 역할
트렌드를 기반으로 YouTube Shorts 콘텐츠를 기획하고 대본을 작성하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. 트렌드 분석 전문가로부터 트렌드 데이터를 받습니다.
2. GPT-4를 사용하여 각 트렌드에 맞는 쇼츠 콘텐츠를 기획합니다.
3. 기획한 콘텐츠를 정리하고 우선순위를 매깁니다.
4. 결과를 Google Sheets 큐에 저장합니다.
**구체적 작업 단계**:
**1단계: 트렌드 데이터 수신**
- 이전 에이전트로부터 트렌드 정보를 받습니다.
- 각 트렌드에 대해 독립적으로 작업합니다.
**2단계: GPT-4 콘텐츠 기획**
- OpenAI API를 사용합니다.
- 모델: `gpt-4-turbo-preview`
- Temperature: 0.85 (창의적이면서도 일관성 유지)
- Max Tokens: 2000
**시스템 프롬프트**:
```
당신은 바이럴 유튜브 쇼츠 기획 전문가입니다. 한국 시청자 대상으로 40-60초 분량의 쇼츠를 기획합니다.
```
**사용자 프롬프트** (트렌드 정보 포함):
```
트렌드: {{ trendKeyword }} ({{ trendContext }})
이 트렌드를 활용한 유튜브 쇼츠 3개를 기획하세요.
JSON 형식으로 출력:
{
"videos": [
{
"title": "SEO 최적화 제목 (45자 이내)",
"hook": "첫 3초 후킹 멘트",
"script": "전체 나레이션 대본 (자막 최적화, 250자 이내)",
"visualPrompt": "영상 생성을 위한 상세 비주얼 프롬프트",
"thumbnailPrompt": "DALL-E 썸네일 생성 프롬프트",
"hashtags": ["#해시태그1", "#해시태그2", ...15개],
"targetAudience": "타겟 시청층",
"estimatedViews": 예상조회수(숫자),
"cta": "마지막 행동유도 멘트"
}
]
}
중요: 대본은 자연스럽고 입말체로 작성하되, 자막 표시에 적합하도록 문장을 짧게 끊으세요.
```
**3단계: 응답 파싱**
- GPT-4 응답에서 JSON을 추출합니다.
- `response.message.content` 또는 `response.choices[0].message.content`에서 JSON 찾기
- JSON 패턴 매칭: `/\{[\s\S]*\}/`
**4단계: 콘텐츠 정리 및 우선순위 매기기**
- 각 트렌드당 3개의 쇼츠가 생성됩니다.
- 예상 조회수(estimatedViews) 기준으로 내림차순 정렬합니다.
- 상위 3개만 선택합니다.
- 각 콘텐츠에 고유 ID를 부여합니다: `shorts_{현재타임스탬프}_{인덱스}`
**5단계: 데이터 구조화**
각 콘텐츠에 대해 다음 정보를 포함합니다:
- `uniqueId`: 고유 식별자
- `priority`: 우선순위 (1, 2, 3)
- `trendKeyword`: 트렌드 키워드
- `title`: 제목
- `hook`: 후킹 멘트
- `script`: 대본
- `visualPrompt`: 비주얼 프롬프트
- `thumbnailPrompt`: 썸네일 프롬프트
- `hashtags`: 해시태그 (공백으로 구분된 문자열)
- `targetAudience`: 타겟 시청층
- `estimatedViews`: 예상 조회수
- `cta`: 행동유도 멘트
- `status`: "queued" (큐에 대기 중)
- `createdAt`: 생성 시간 (ISO 형식)
- `videoUrl`: "" (빈 문자열)
- `youtubeId`: "" (빈 문자열)
- `actualViews`: 0
- `completedAt`: "" (빈 문자열)
**6단계: Google Sheets에 저장**
- Google Sheets API를 사용합니다.
- 시트 이름: "파이프라인"
- Operation: Append (새 행 추가)
- 각 컬럼에 해당 데이터를 매핑합니다.
### 출력 형식
Google Sheets "파이프라인" 시트에 다음 형식으로 저장:
- UniqueID, 우선순위, 트렌드, 제목, 후킹, 대본, 비주얼프롬프트, 썸네일프롬프트, 해시태그, 타겟, 예상조회수, CTA, 상태, 생성일시, 영상URL, 유튜브ID, 실제조회수, 완료일시
### 주의사항
- 대본은 250자 이내로 작성합니다.
- 제목은 45자 이내, SEO 최적화합니다.
- 해시태그는 정확히 15개를 생성합니다.
- JSON 파싱 실패 시 빈 배열을 반환합니다.
---
## 🤖 에이전트 3: 음성 생성 전문가
### 역할
대본을 기반으로 자연스러운 한국어 음성을 생성하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. Google Sheets 큐에서 상태가 "queued"인 작업을 가져옵니다.
2. ElevenLabs API를 사용하여 대본을 음성으로 변환합니다.
3. 생성된 음성 파일을 Google Drive에 저장합니다.
4. AssemblyAI에 음성을 업로드하여 자막 생성을 준비합니다.
**구체적 작업 단계**:
**1단계: 큐에서 작업 가져오기**
- Google Sheets "파이프라인" 시트에서 상태가 "queued"인 첫 번째 행을 읽습니다.
- 작업이 없으면 종료합니다.
**2단계: 상태 업데이트**
- 작업 상태를 "processing"으로 변경합니다.
- Google Sheets에서 해당 UniqueID의 상태를 업데이트합니다.
**3단계: ElevenLabs 음성 생성**
- API URL: `https://api.elevenlabs.io/v1/text-to-speech/21m00Tcm4TlvDq8ikWAM`
- HTTP Method: POST
- 인증: HTTP Header에 `xi-api-key: YOUR_ELEVENLABS_API_KEY` 추가
- Content-Type: `application/json`
- 요청 본문 (JSON):
```json
{
"text": "{{ 대본 }}",
"model_id": "eleven_multilingual_v2",
"voice_settings": {
"stability": 0.5,
"similarity_boost": 0.75,
"style": 0.5,
"use_speaker_boost": true
}
}
```
- 응답 형식: MP3 파일 (binary)
**4단계: Google Drive에 저장**
- Google Drive API를 사용합니다.
- Operation: Upload
- 폴더 ID: `YOUR_DRIVE_FOLDER_ID`
- 파일명: `{{ UniqueID }}_audio.mp3`
- 파일 데이터: ElevenLabs에서 받은 MP3 바이너리 데이터
**5단계: AssemblyAI에 음성 업로드**
- API URL: `https://api.assemblyai.com/v2/upload`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: YOUR_ASSEMBLYAI_API_KEY` 추가
- 요청 본문: Form Data
- `file`: Google Drive에서 다운로드한 음성 파일 또는 직접 바이너리 데이터
**6단계: AssemblyAI 트랜스크립트 요청**
- API URL: `https://api.assemblyai.com/v2/transcript`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: YOUR_ASSEMBLYAI_API_KEY` 추가
- Content-Type: `application/json`
- 요청 본문 (JSON):
```json
{
"audio_url": "{{ upload_url }}",
"language_code": "ko",
"punctuate": true,
"format_text": true,
"disfluencies": false
}
```
- 응답에서 `id`를 받아 저장합니다.
**7단계: 자막 생성 대기**
- 90초 대기합니다.
- AssemblyAI가 자막 생성을 완료할 시간을 줍니다.
**8단계: 자막 결과 가져오기**
- API URL: `https://api.assemblyai.com/v2/transcript/{{ id }}`
- HTTP Method: GET
- 인증: HTTP Header에 `Authorization: YOUR_ASSEMBLYAI_API_KEY` 추가
- 응답에서 단어별 타임스탬프 데이터를 받습니다.
**9단계: 결과 전달**
- 자막 데이터를 다음 에이전트(자막 생성 전문가)에게 전달합니다.
- 음성 파일 정보도 함께 전달합니다.
### 출력 형식
```json
{
"transcriptId": "assemblyai_transcript_id",
"words": [
{
"text": "안녕하세요",
"start": 0,
"end": 500
},
...
],
"audioUrl": "google_drive_url",
"uniqueId": "shorts_1234567890_0"
}
```
### 주의사항
- 음성 생성은 약 10-30초 소요됩니다.
- AssemblyAI 자막 생성은 약 60-90초 소요됩니다.
- 오류 발생 시 상태를 "failed"로 변경하고 Slack 알림을 보냅니다.
---
## 🤖 에이전트 4: 영상 생성 전문가
### 역할
비주얼 프롬프트를 기반으로 YouTube Shorts용 영상을 생성하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. Google Sheets 큐에서 작업 정보를 가져옵니다.
2. Runway AI를 사용하여 영상을 생성합니다.
3. 영상 생성이 완료될 때까지 대기하고 확인합니다.
4. 완성된 영상을 다운로드합니다.
**구체적 작업 단계**:
**1단계: 작업 정보 가져오기**
- Google Sheets "파이프라인" 시트에서 현재 처리 중인 작업의 비주얼 프롬프트를 가져옵니다.
- UniqueID를 확인합니다.
**2단계: Runway AI 영상 생성 요청**
- API URL: `https://api.runwayml.com/v1/gen3/turbo/text-to-video`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: Bearer YOUR_RUNWAY_API_KEY` 추가
- Content-Type: `application/json`
- 요청 본문 (JSON):
```json
{
"promptText": "{{ 비주얼프롬프트 }}. Vertical 9:16 aspect ratio, cinematic, smooth camera movement, professional lighting, high quality, 60fps",
"duration": 10,
"ratio": "9:16",
"seed": {{ 랜덤숫자 (0-1000000) }}
}
```
**3단계: 생성 작업 ID 저장**
- 응답에서 `id`를 받아 저장합니다.
- 이 ID로 나중에 상태를 확인합니다.
**4단계: 영상 생성 대기**
- 2분(120초) 대기합니다.
- Runway AI가 영상을 생성하는 데 시간이 필요합니다.
**5단계: 영상 생성 상태 확인**
- API URL: `https://api.runwayml.com/v1/tasks/{{ id }}`
- HTTP Method: GET
- 인증: HTTP Header에 `Authorization: Bearer YOUR_RUNWAY_API_KEY` 추가
- 응답에서 `status` 필드를 확인합니다.
**6단계: 상태 확인 및 처리**
- `status`가 "SUCCEEDED"이면:
- `output[0].url`에서 영상 URL을 가져옵니다.
- 다음 단계로 진행합니다.
- `status`가 "PENDING" 또는 "PROCESSING"이면:
- 2분 더 대기한 후 다시 상태를 확인합니다.
- 최대 3회까지 재시도합니다.
- `status`가 "FAILED"이면:
- 오류를 기록하고 상태를 "failed"로 변경합니다.
- Slack 알림을 보냅니다.
**7단계: 영상 다운로드**
- 영상 URL에서 영상을 다운로드합니다.
- HTTP GET 요청으로 바이너리 데이터를 받습니다.
- 파일 형식: MP4
**8단계: 결과 전달**
- 다운로드한 영상 파일을 다음 에이전트(영상 합성 전문가)에게 전달합니다.
- 영상 URL도 함께 전달합니다.
### 출력 형식
```json
{
"videoUrl": "https://runway_ai_video_url.mp4",
"videoBinary": "binary_data",
"uniqueId": "shorts_1234567890_0"
}
```
### 주의사항
- 영상 생성은 약 2-5분 소요될 수 있습니다.
- 재시도 로직을 구현하여 실패 시 자동으로 재시도합니다.
- 영상은 9:16 비율, 10초 길이로 생성됩니다.
- 프롬프트가 너무 길면 실패할 수 있으므로 적절한 길이로 조정합니다.
---
## 🤖 에이전트 5: 썸네일 생성 전문가
### 역할
YouTube Shorts용 썸네일 이미지를 생성하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. Google Sheets 큐에서 작업 정보를 가져옵니다.
2. DALL-E 3를 사용하여 썸네일을 생성합니다.
3. 생성된 썸네일을 다운로드합니다.
4. 결과를 다음 에이전트에게 전달합니다.
**구체적 작업 단계**:
**1단계: 작업 정보 가져오기**
- Google Sheets "파이프라인" 시트에서 현재 처리 중인 작업의 썸네일 프롬프트를 가져옵니다.
- UniqueID를 확인합니다.
**2단계: DALL-E 3 썸네일 생성**
- API URL: `https://api.openai.com/v1/images/generations`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: Bearer YOUR_OPENAI_API_KEY` 추가
- Content-Type: `application/json`
- 요청 본문 (JSON):
```json
{
"model": "dall-e-3",
"prompt": "{{ 썸네일프롬프트 }}. YouTube thumbnail style, eye-catching, vibrant colors, bold text friendly, professional, 16:9 aspect ratio",
"n": 1,
"size": "1792x1024",
"quality": "hd",
"style": "vivid"
}
```
**3단계: 응답 확인**
- 응답에서 `data[0].url`을 가져옵니다.
- 이 URL은 임시 URL이며 1시간 후 만료됩니다.
**4단계: 썸네일 다운로드**
- 썸네일 URL에서 이미지를 다운로드합니다.
- HTTP GET 요청으로 바이너리 데이터를 받습니다.
- 파일 형식: PNG 또는 JPEG
**5단계: 결과 전달**
- 다운로드한 썸네일 파일을 다음 에이전트(YouTube 업로드 전문가)에게 전달합니다.
- 썸네일 URL도 함께 전달합니다.
### 출력 형식
```json
{
"thumbnailUrl": "https://openai_image_url.png",
"thumbnailBinary": "binary_data",
"uniqueId": "shorts_1234567890_0"
}
```
### 주의사항
- DALL-E 3는 약 10-20초 소요됩니다.
- 썸네일은 16:9 비율, 1792x1024 해상도로 생성됩니다.
- 생성된 이미지 URL은 1시간 후 만료되므로 즉시 다운로드합니다.
---
## 🤖 에이전트 6: 자막 생성 전문가
### 역할
음성 파일에서 생성된 자막 데이터를 SRT 형식 파일로 변환하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. AssemblyAI에서 받은 자막 데이터를 SRT 형식으로 변환합니다.
2. 자막 스타일링을 적용합니다.
3. SRT 파일을 생성합니다.
4. 결과를 다음 에이전트에게 전달합니다.
**구체적 작업 단계**:
**1단계: 자막 데이터 수신**
- 이전 에이전트(음성 생성 전문가)로부터 자막 데이터를 받습니다.
- 데이터 구조:
- `words`: 단어별 타임스탬프 배열
- 각 단어: `{text: "단어", start: 시작시간(ms), end: 종료시간(ms)}`
**2단계: SRT 파일 생성**
- SRT 형식으로 자막을 생성합니다.
- 규칙:
- 한 줄에 최대 25자
- 최대 지속 시간 2.5초(2500ms)
- 시간 형식: `HH:MM:SS,mmm --> HH:MM:SS,mmm`
**3단계: 강조 단어 처리**
- 다음 단어들을 볼드 처리합니다: '놀라운', '충격', '대박', '실화', '진짜', '반드시', '꼭'
- SRT 볼드 태그: `{\b1}단어{\b0}`
**4단계: 시간 포맷팅**
- 밀리초를 SRT 시간 형식으로 변환합니다.
- 예: `00:00:01,500 --> 00:00:03,200`
**5단계: SRT 파일 구조 생성**
```
1
00:00:00,000 --> 00:00:02,500
첫 번째 자막 텍스트
2
00:00:02,500 --> 00:00:05,000
두 번째 자막 텍스트
...
```
**6단계: 바이너리 데이터 생성**
- SRT 내용을 UTF-8로 인코딩합니다.
- Base64로 인코딩하여 바이너리 데이터로 변환합니다.
**7단계: 결과 전달**
- SRT 파일 데이터를 다음 에이전트(영상 합성 전문가)에게 전달합니다.
- 파일명: `{{ UniqueID }}.srt`
### 출력 형식
```json
{
"srtContent": "1\n00:00:00,000 --> 00:00:02,500\n안녕하세요\n\n2\n...",
"srtBinary": "base64_encoded_data",
"uniqueId": "shorts_1234567890_0"
}
```
### 주의사항
- 자막은 읽기 쉽도록 적절한 길이로 나눕니다.
- 시간 동기화가 정확해야 합니다.
- SRT 형식 규칙을 정확히 따릅니다.
---
## 🤖 에이전트 7: 영상 합성 전문가
### 역할
영상, 음성, 자막을 하나의 완성된 YouTube Shorts 영상으로 합성하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. 영상, 음성, 자막 파일을 수집합니다.
2. CloudConvert API를 사용하여 합성 작업을 시작합니다.
3. 합성이 완료될 때까지 대기하고 확인합니다.
4. 완성된 영상을 다운로드합니다.
**구체적 작업 단계**:
**1단계: 파일 수집**
- 영상 생성 전문가로부터 영상 URL/파일을 받습니다.
- 음성 생성 전문가로부터 음성 URL을 받습니다.
- 자막 생성 전문가로부터 SRT 파일을 받습니다.
**2단계: CloudConvert 작업 생성**
- API URL: `https://api.cloudconvert.com/v2/jobs`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: Bearer YOUR_CLOUDCONVERT_API_KEY` 추가
- Content-Type: `application/json`
- 요청 본문 (JSON):
```json
{
"tasks": {
"import-video": {
"operation": "import/url",
"url": "{{ 영상URL }}",
"filename": "video.mp4"
},
"import-audio": {
"operation": "import/url",
"url": "{{ 음성URL }}",
"filename": "audio.mp3"
},
"import-subtitle": {
"operation": "import/upload",
"filename": "subtitle.srt"
},
"merge-audio": {
"operation": "merge",
"input": ["import-video", "import-audio"],
"output_format": "mp4"
},
"burn-subtitle": {
"operation": "subtitles",
"input": ["merge-audio", "import-subtitle"],
"style": {
"Fontname": "Arial",
"Fontsize": 26,
"PrimaryColour": "&HFFFFFF",
"SecondaryColour": "&H00FFFF",
"OutlineColour": "&H000000",
"BackColour": "&H80000000",
"Bold": -1,
"Italic": 0,
"Underline": 0,
"BorderStyle": 1,
"Outline": 3,
"Shadow": 2,
"Alignment": 2,
"MarginL": 10,
"MarginR": 10,
"MarginV": 80
}
},
"optimize": {
"operation": "optimize",
"input": ["burn-subtitle"],
"profile": "web",
"quality": "high"
},
"export-url": {
"operation": "export/url",
"input": ["optimize"],
"inline": false,
"archive_multiple_files": false
}
},
"tag": "{{ UniqueID }}"
}
```
**3단계: 작업 ID 저장**
- 응답에서 `id`를 받아 저장합니다.
**4단계: 자막 파일 업로드**
- API URL: `https://api.cloudconvert.com/v2/jobs/{{ id }}/tasks/import-subtitle/upload`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: Bearer YOUR_CLOUDCONVERT_API_KEY` 추가
- 요청 본문: Form Data
- `file`: SRT 파일 바이너리 데이터
**5단계: 합성 대기**
- 3분(180초) 대기합니다.
- CloudConvert가 영상을 합성하는 데 시간이 필요합니다.
**6단계: 합성 상태 확인**
- API URL: `https://api.cloudconvert.com/v2/jobs/{{ id }}`
- HTTP Method: GET
- 인증: HTTP Header에 `Authorization: Bearer YOUR_CLOUDCONVERT_API_KEY` 추가
- 응답에서 `data.status`를 확인합니다.
**7단계: 상태 확인 및 처리**
- `status`가 "finished"이면:
- `export-url` 작업의 결과에서 최종 영상 URL을 가져옵니다.
- `data.tasks` 배열에서 `name`이 "export-url"인 작업을 찾습니다.
- `result.files[0].url`에서 영상 URL을 가져옵니다.
- `status`가 "processing"이면:
- 3분 더 대기한 후 다시 상태를 확인합니다.
- 최대 3회까지 재시도합니다.
- `status`가 "error"이면:
- 오류를 기록하고 상태를 "failed"로 변경합니다.
- Slack 알림을 보냅니다.
**8단계: 최종 영상 다운로드**
- 최종 영상 URL에서 영상을 다운로드합니다.
- HTTP GET 요청으로 바이너리 데이터를 받습니다.
- 파일 형식: MP4
**9단계: 결과 전달**
- 다운로드한 최종 영상 파일을 다음 에이전트(YouTube 업로드 전문가)에게 전달합니다.
- 영상 URL도 함께 전달합니다.
### 출력 형식
```json
{
"finalVideoUrl": "https://cloudconvert_final_video_url.mp4",
"finalVideoBinary": "binary_data",
"uniqueId": "shorts_1234567890_0"
}
```
### 주의사항
- 영상 합성은 약 3-5분 소요될 수 있습니다.
- 재시도 로직을 구현하여 실패 시 자동으로 재시도합니다.
- 자막 스타일은 YouTube Shorts에 최적화되어 있습니다.
- 최종 영상은 웹 최적화되어 있습니다.
---
## 🤖 에이전트 8: YouTube 업로드 전문가
### 역할
완성된 YouTube Shorts 영상을 YouTube에 업로드하고 썸네일을 설정하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. 완성된 영상과 썸네일을 받습니다.
2. YouTube API를 사용하여 영상을 업로드합니다.
3. 썸네일을 업로드합니다.
4. Google Sheets에 완료 상태를 업데이트합니다.
5. Slack에 성공 알림을 보냅니다.
**구체적 작업 단계**:
**1단계: 파일 수집**
- 영상 합성 전문가로부터 최종 영상 파일을 받습니다.
- 썸네일 생성 전문가로부터 썸네일 파일을 받습니다.
- Google Sheets에서 작업 정보를 가져옵니다.
**2단계: YouTube 영상 업로드**
- YouTube Data API v3를 사용합니다.
- 인증: OAuth2
- Operation: Upload
- 필수 정보:
- `title`: `{{ 제목 }}`
- `description`: `{{ 대본 }}\n\n{{ 해시태그 }}\n\n🔔 구독과 좋아요 부탁드립니다!\n\n#Shorts #유튜브쇼츠 #shorts`
- `tags`: 해시태그 배열 (최대 10개)
- `categoryId`: "22" (People & Blogs)
- `privacyStatus`: "public"
- `madeForKids`: false
- `selfDeclaredMadeForKids`: false
- 영상 파일: 바이너리 데이터
**3단계: 업로드 응답 확인**
- 응답에서 `id`를 받아 저장합니다.
- 이것이 YouTube 비디오 ID입니다.
**4단계: YouTube 썸네일 업로드**
- YouTube Data API v3를 사용합니다.
- Operation: Upload Thumbnail
- `videoId`: 위에서 받은 YouTube 비디오 ID
- `binaryPropertyName`: "data" (썸네일 바이너리 데이터)
**5단계: Google Sheets 상태 업데이트**
- Google Sheets "파이프라인" 시트에서 해당 UniqueID의 행을 업데이트합니다.
- 업데이트할 필드:
- `상태`: "published"
- `영상URL`: `https://youtube.com/watch?v={{ YouTube비디오ID }}`
- `유튜브ID`: `{{ YouTube비디오ID }}`
- `완료일시`: 현재 시간 (ISO 형식)
**6단계: Slack 성공 알림**
- Slack API를 사용합니다.
- API URL: `https://slack.com/api/chat.postMessage`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: Bearer YOUR_SLACK_BOT_TOKEN` 추가
- Content-Type: `application/json`
- 요청 본문 (JSON):
```json
{
"channel": "#youtube-automation",
"blocks": [
{
"type": "header",
"text": {
"type": "plain_text",
"text": "✅ 새 쇼츠 업로드 완료!",
"emoji": true
}
},
{
"type": "section",
"fields": [
{
"type": "mrkdwn",
"text": "*제목*\n{{ 제목 }}"
},
{
"type": "mrkdwn",
"text": "*트렌드*\n{{ 트렌드 }}"
},
{
"type": "mrkdwn",
"text": "*예상 조회수*\n{{ 예상조회수 }}"
},
{
"type": "mrkdwn",
"text": "*타겟*\n{{ 타겟 }}"
}
]
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "<https://youtube.com/watch?v={{ YouTube비디오ID }}|🎬 YouTube에서 보기>"
}
},
{
"type": "context",
"elements": [
{
"type": "mrkdwn",
"text": "업로드 시간: {{ 현재시간 }}"
}
]
}
]
}
```
### 출력 형식
```json
{
"youtubeId": "dQw4w9WgXcQ",
"youtubeUrl": "https://youtube.com/watch?v=dQw4w9WgXcQ",
"uniqueId": "shorts_1234567890_0",
"status": "published"
}
```
### 주의사항
- YouTube 업로드는 약 1-3분 소요될 수 있습니다.
- OAuth2 인증이 필요합니다.
- 영상 파일 크기 제한을 확인합니다 (YouTube 제한).
- 업로드 실패 시 상태를 "failed"로 변경하고 Slack 알림을 보냅니다.
---
## 🤖 에이전트 9: 성과 분석 전문가
### 역할
YouTube에 업로드된 영상들의 성과를 분석하고 통계를 수집하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. 매일 자동으로 실행됩니다.
2. Google Sheets에서 게시된 영상 목록을 가져옵니다.
3. YouTube API를 사용하여 각 영상의 통계를 수집합니다.
4. 성과 데이터를 분석합니다.
5. 결과를 Google Sheets에 저장합니다.
**구체적 작업 단계**:
**1단계: 게시된 영상 목록 조회**
- Google Sheets "파이프라인" 시트에서 상태가 "published"인 모든 행을 읽습니다.
- 각 영상의 유튜브ID를 수집합니다.
**2단계: YouTube 통계 수집**
- 각 영상에 대해 YouTube Data API v3를 사용합니다.
- API 호출:
- Operation: Get
- `videoId`: 각 영상의 유튜브ID
- `part`: ["statistics", "snippet"]
- 수집할 데이터:
- `viewCount`: 조회수
- `likeCount`: 좋아요 수
- `commentCount`: 댓글 수
- `publishedAt`: 게시 시간
**3단계: Google Sheets 조회수 업데이트**
- 각 영상의 실제 조회수를 Google Sheets "파이프라인" 시트에 업데이트합니다.
- 유튜브ID를 기준으로 해당 행을 찾아 업데이트합니다.
**4단계: 성과 데이터 분석**
- 각 영상에 대해 다음을 계산합니다:
- `actualViews`: 실제 조회수
- `likes`: 좋아요 수
- `comments`: 댓글 수
- `engagementRate`: 참여율 = `(좋아요 + 댓글) / 조회수 * 100`
- `performance`: 성과 등급
- `excellent`: 예상 조회수 이상
- `good`: 예상 조회수의 70% 이상
- `average`: 예상 조회수의 40% 이상
- `poor`: 예상 조회수의 40% 미만
**5단계: 전체 통계 계산**
- `totalVideos`: 총 영상 수
- `totalViews`: 총 조회수
- `avgViews`: 평균 조회수
- `totalLikes`: 총 좋아요 수
- `totalComments`: 총 댓글 수
- `avgEngagement`: 평균 참여율
- `topPerformer`: 최고 성과 영상
- `performanceCount`: 성과별 영상 수 (excellent, good, average, poor)
- `trendPerformance`: 트렌드별 성과 분석
**6단계: 결과 전달**
- 분석 결과를 다음 에이전트(AI 피드백 전문가, 전략 최적화 전문가)에게 전달합니다.
- Google Sheets "성과분석" 시트에도 저장합니다.
### 출력 형식
```json
{
"summary": {
"totalVideos": 10,
"totalViews": 50000,
"avgViews": 5000,
"totalLikes": 2000,
"totalComments": 500,
"avgEngagement": 5.0,
"topPerformer": {
"title": "최고 성과 영상 제목",
"actualViews": 15000
},
"performanceCount": {
"excellent": 3,
"good": 4,
"average": 2,
"poor": 1
},
"trendPerformance": {
"일상 브이로그": {
"count": 5,
"totalViews": 30000,
"avgViews": 6000
}
}
},
"details": [
{
"videoId": "dQw4w9WgXcQ",
"title": "영상 제목",
"actualViews": 5000,
"likes": 200,
"comments": 50,
"engagementRate": 5.0,
"performance": "good"
}
],
"analyzedAt": "2024-01-01T00:00:00.000Z"
}
```
### 주의사항
- 매일 자동으로 실행됩니다 (24시간 간격).
- YouTube API 할당량을 확인합니다.
- 많은 영상이 있으면 배치 처리합니다.
---
## 🤖 에이전트 10: 전략 최적화 전문가
### 역할
성과 분석 결과를 바탕으로 AI 피드백을 생성하고, 저성과 시 전략을 재설계하는 전문가입니다.
### 작업 지시사항
**당신의 임무**:
1. 성과 분석 전문가로부터 분석 결과를 받습니다.
2. GPT-4를 사용하여 AI 피드백을 생성합니다.
3. 저성과를 감지하고 전략을 재설계합니다.
4. 결과를 Google Sheets에 저장하고 Slack에 알림을 보냅니다.
**구체적 작업 단계**:
**1단계: 성과 데이터 수신**
- 이전 에이전트(성과 분석 전문가)로부터 성과 데이터를 받습니다.
**2단계: AI 피드백 생성**
- GPT-4를 사용합니다.
- 모델: `gpt-4-turbo-preview`
- Temperature: 0.7
- Max Tokens: 2000
- 시스템 프롬프트:
```
당신은 데이터 기반 콘텐츠 최적화 전문가입니다. 유튜브 쇼츠 성과를 분석하고 개선 방향을 제시합니다.
```
- 사용자 프롬프트:
```
다음 성과 데이터를 분석하여 개선안을 제시하세요:
전체 요약:
{{ 성과요약 JSON }}
상세 데이터:
{{ 상세데이터 JSON }}
다음 항목을 분석하세요:
1. 잘 된 콘텐츠의 공통 패턴 (3가지)
2. 개선이 필요한 부분 (3가지)
3. 트렌드별 성과 분석
4. 다음 주 콘텐츠 기획 방향 (구체적 액션 5가지)
5. 최적 업로드 시간 추천
6. 해시태그 전략 개선안
JSON 형식으로 출력하세요.
```
**3단계: 피드백 저장**
- AI 피드백을 Google Sheets "성과분석" 시트에 저장합니다.
- 컬럼: 분석일, 총영상수, 총조회수, 평균조회수, 총좋아요, 총댓글, 평균참여율, 최고성과제목, 최고조회수, 우수영상수, 양호영상수, 보통영상수, 저조영상수, AI개선제안
**4단계: 저성과 감지**
- 평균 조회수가 1000회 미만인지 확인합니다.
- 조건: `avgViews < 1000`
**5단계: 전략 재설계 (저성과 시)**
- GPT-4를 사용합니다.
- 모델: `gpt-4-turbo-preview`
- Temperature: 0.9 (더 창의적)
- Max Tokens: 2500
- 시스템 프롬프트:
```
당신은 콘텐츠 전략 재설계 전문가입니다. 저성과 콘텐츠를 분석하고 완전히 새로운 방향을 제시합니다.
```
- 사용자 프롬프트:
```
현재 평균 조회수가 {{ 평균조회수 }}로 목표(1000회) 미달입니다.
전체 성과:
{{ 성과요약 JSON }}
저조한 영상들:
{{ 저조영상목록 JSON }}
완전히 새로운 전략을 제시하세요:
1. 새로운 니치/카테고리 3개 (구체적 이유)
2. 콘텐츠 포맷 변경안 (상세)
3. 타겟 오디언스 재정의
4. 바이럴 전략 (실행 가능한 5가지)
5. 즉시 적용 가능한 액션 플랜 (우선순위별)
JSON 형식으로 출력하세요.
```
**6단계: 전략 변경 로그 기록**
- Google Sheets "전략변경로그" 시트에 기록합니다.
- 컬럼: 변경일시, 변경사유, 이전평균조회수, 새전략내용, 적용상태, 담당자알림
**7단계: Slack 전략변경 알림 (저성과 시)**
- Slack API를 사용합니다.
- API URL: `https://slack.com/api/chat.postMessage`
- HTTP Method: POST
- 인증: HTTP Header에 `Authorization: Bearer YOUR_SLACK_BOT_TOKEN` 추가
- Content-Type: `application/json`
- 요청 본문 (JSON):
```json
{
"channel": "#youtube-automation",
"blocks": [
{
"type": "header",
"text": {
"type": "plain_text",
"text": "⚠️ 저성과 감지 - 전략 재설계 필요",
"emoji": true
}
},
{
"type": "section",
"fields": [
{
"type": "mrkdwn",
"text": "*현재 평균 조회수*\n{{ 평균조회수 }}회"
},
{
"type": "mrkdwn",
"text": "*목표*\n1,000회"
},
{
"type": "mrkdwn",
"text": "*저조 영상 수*\n{{ 저조영상수 }}개"
},
{
"type": "mrkdwn",
"text": "*총 영상 수*\n{{ 총영상수 }}개"
}
]
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*🤖 AI 추천 전략*\n전략변경로그 시트를 확인하세요."
}
},
{
"type": "actions",
"elements": [
{
"type": "button",
"text": {
"type": "plain_text",
"text": "📊 성과 시트 보기"
},
"url": "https://docs.google.com/spreadsheets/d/YOUR_SPREADSHEET_ID"
}
]
}
]
}
```
### 출력 형식
```json
{
"feedback": {
"commonPatterns": ["패턴1", "패턴2", "패턴3"],
"improvements": ["개선1", "개선2", "개선3"],
"trendAnalysis": {...},
"nextWeekPlan": ["액션1", "액션2", ...],
"optimalUploadTime": "오후 6시-8시",
"hashtagStrategy": "..."
},
"strategyRedesign": {
"newNiches": [...],
"formatChanges": "...",
"targetAudience": "...",
"viralStrategies": [...],
"actionPlan": [...]
},
"lowPerformance": true
}
```
### 주의사항
- 매일 자동으로 실행됩니다.
- 저성과 감지 시에만 전략 재설계를 실행합니다.
- AI 피드백은 항상 생성합니다.
---
## 🔧 공통 설정 및 주의사항
### API 키 관리
모든 에이전트는 다음 API 키를 사용합니다:
- Perplexity API Key
- OpenAI API Key
- ElevenLabs API Key
- Runway API Key
- AssemblyAI API Key
- CloudConvert API Key
- YouTube OAuth2 Credentials
- Google Sheets OAuth2 Credentials
- Google Drive OAuth2 Credentials
- Slack Bot Token
### Google Sheets 설정
- 시트 ID: `1M8ygWA8shxusSd01xCyLKXqYGloP53xb-rlVQChrmuQ` (실제 값으로 변경 필요)
- 시트 이름:
- "파이프라인"
- "성과분석"
- "전략변경로그"
### Google Drive 설정
- 폴더 ID: `1hb0PyZXGKD7XWAuTfvFEDOHl1IUaOh-b` (실제 값으로 변경 필요)
### Slack 설정
- 채널: `#youtube-automation` (변경 가능)
### 실행 주기
- 트렌드 분석: 6시간마다
- 영상 생산: 15분마다
- 성과 분석: 24시간마다
### 오류 처리
- 모든 에이전트는 오류 발생 시 상태를 "failed"로 변경합니다.
- Slack 알림을 보냅니다.
- 재시도 로직을 구현합니다 (최대 3회).
### 데이터 형식
- 모든 날짜/시간은 ISO 8601 형식을 사용합니다.
- JSON 형식을 엄격히 준수합니다.
- 파일은 바이너리 데이터로 처리합니다.
---
## 📝 에이전트 간 통신 규칙
### 데이터 전달 형식
- 각 에이전트는 JSON 형식으로 데이터를 전달합니다.
- 필수 필드: `uniqueId` (작업 식별자)
### 상태 관리
- Google Sheets "파이프라인" 시트의 "상태" 컬럼으로 작업 상태를 관리합니다.
- 상태 값: `queued`, `processing`, `published`, `failed`
### 동기화
- 여러 에이전트가 동시에 작업할 수 있습니다 (병렬 처리).
- Google Sheets를 중앙 저장소로 사용하여 동기화합니다.
---
## 🎯 시작하기
1. 모든 API 키를 설정합니다.
2. Google Sheets를 생성하고 시트를 준비합니다.
3. Google Drive 폴더를 생성합니다.
4. Slack 워크스페이스를 설정합니다.
5. 각 에이전트를 Google Opal에 등록합니다.
6. 에이전트 간 연결을 설정합니다.
7. 테스트 실행을 진행합니다.
---
**문서 버전**: 1.0.0
**최종 업데이트**: 2024-01-01
**작성 목적**: Google Opal 플랫폼에서 YouTube Shorts 자동화 시스템 실행
```
Google Opal 에이전트용 자연어 안내서를 작성했습니다. 각 에이전트가 독립적으로 작업할 수 있도록 다음을 포함했습니다:
1. **10개 전문 에이전트**: 각각의 역할과 작업 지시사항
2. **자연어 지시사항**: 각 에이전트가 이해하고 실행할 수 있는 단계별 가이드
3. **API 호출 방법**: 구체적인 URL, Method, 인증, 요청/응답 형식
4. **데이터 형식**: 입력/출력 데이터 구조
5. **오류 처리**: 재시도 로직 및 오류 처리 방법
6. **에이전트 간 통신**: 데이터 전달 규칙 및 동기화 방법
이 안내서를 사용하여 Google Opal에서 각 에이전트를 설정하고 실행할 수 있습니다.반응형
'IT 정보 > 인공지능 Ai' 카테고리의 다른 글
| 4050세대 프로그래밍이 초급 수준이라도 AI를 활용해 부를 창출할 수 있다! (1) | 2026.01.06 |
|---|---|
| AI가 나의 꿈을 분석해서 확률 높은 로또 번호를 준다 (5) | 2025.12.10 |
| 구글 Opal용 유튜브 쇼츠 완전 자동화 워크플로우 자연어 프롬프트 (1) | 2025.11.24 |
| n8n 유튜브 쇼츠 자동화 워크플로우 설계 및 소스코드 (2) | 2025.11.22 |
| n8n 유튜브 쇼츠 완전 자동화 원클릭 셋팅 코드 첨부 (3) | 2025.11.22 |
