개요
이 문서는 완전한 Feishu Bitable을 이미지 생산 라인으로 전환하는 워크플로입니다. 운영자는 한 행에 prompt와 참조 첨부파일을 채워 넣으면, 첨부파일이 자동으로 OSS URL로 변환되고, 그다음 Coze 워크플로가 Nano Banana Pro를 호출하며, 최종적으로 생성된 이미지가 첨부파일로 다시 해당 행에 들어갑니다. 사용자 측에서는 코드 작업이 전혀 필요하지 않습니다. 작성자 Shuaila1996이 실제 운영 경험을 바탕으로 이 구성을 정리했으며, Feishu 필드 바로가기, Aliyun Function Compute 함수, Coze 플러그인이라는 서로 독립적이지만 협력하는 3가지 구성 요소로 이루어져 있습니다.
프로젝트 정보
- 📦 형식: 코드 패키지로 공유됨 (깃허브에 게시되지 않음)
- 👤 작성자: Shuaila1996
- 🎯 사용 사례: Feishu Enterprise Bitable + Aliyun + Coze CN
- 🔌 모델:
gemini-3-pro-image-preview(Nano Banana Pro, APIYI를 통해) - 📝 Feishu 바로가기와 Aliyun 함수의 전체 소스는 이 문서에 포함되어 있으며, Coze 플러그인 소스는 Nano Banana Pro Coze Plugin에 있습니다
핵심 기능
작업대로서의 Bitable
운영자가 Feishu Bitable에서 prompt를 입력하고 참조 이미지를 업로드합니다 — 코드도, 워크플로 편집기도 필요 없습니다
자동 첨부 → OSS
맞춤형 Feishu 필드 바로가기가 바이너리를 다운로드해 Aliyun FC로 전달하고, FC가 이를 압축한 뒤 OSS에 업로드합니다
사용자별 다중 키
Coze 워크플로에는 “사용자별 API key” 딕셔너리가 포함되어 있어 호출자별로 APIYI 키를 라우팅합니다 — 깔끔한 사용량 집계를 위해서입니다
일괄 생성
Bitable의 기본 일괄 행 작업 + 필드 바로가기 = 한 번의 클릭으로 수십 개에서 수백 개의 이미지를 생성합니다
행에 직접 다시 쓰기
Coze에서 반환된 OSS URL은 Feishu의 공식 “URL → 첨부파일” 바로가기를 통해 다시 기록되며, 이미지 첨부파일로 인라인 표시됩니다
명확한 오류 피드백
모더레이션 실패, 거부, 타임아웃은 행에 친절한 텍스트로 돌아와 우선 분류하기 쉽습니다
지원되는 APIYI 모델
아키텍처
배포 단계
1
1단계: Aliyun 인프라
- OSS 버킷을 프로비저닝하고;
oss:PutObject및oss:ProcessObject권한이 있는 RAM 하위 계정을 생성합니다 - Function Compute(FC)를 프로비저닝하고; Node.js 18+에서 HTTP 트리거 함수 하나를 생성합니다
- 의존성을 설치합니다:
ali-oss - 환경 변수를 설정합니다(키를 절대 하드코딩하지 마십시오):

2
2단계: Aliyun FC 함수를 배포합니다
작성자의
aliyun-fc-oss-upload.js를 FC 함수에 넣습니다. 이 함수는 다음을 수행합니다.- Feishu 단축키에서 전달된 바이너리를 받습니다
client.put를 통해 원본을 업로드합니다client.processObjectSave를 통해 압축본을 저장합니다(긴 변 4500 / 품질 95)- 압축된 공개 URL을 Feishu가 파싱할 수 있는
feishuWrapper구조로 감쌉니다
3
3단계: Feishu 필드 단축키를 빌드합니다
Feishu 필드 단축키 프레임워크를 사용해 패키징한 뒤 Feishu의 공식 팀에 제출해 기업 단축키 라이브러리에 업로드합니다.
feishu-attachment-to-oss.ts를 배포합니다. 두 군데만 교체합니다:4
4단계: Feishu Bitable 필드를 구성합니다
Bitable에 다음 필드를 설정합니다:
Merged prompt의 수식 예시는 다음과 같습니다:5
5단계: Coze 플러그인과 워크플로우를 배포합니다
- Nano Banana Pro Coze Plugin에 따라 Python 플러그인을 배포합니다
- 작성자의 Coze 워크플로우 내보내기를 가져오는데, 다음이 포함됩니다:
- 이미지와 prompt를 분리하는 코드 노드
- “사용자별 API key” 딕셔너리 노드(호출자 이름 → APIYI key)
- Nano Banana Pro 플러그인 노드
- 성공 / 실패 / 오류 집계
- 워크플로우 내부에서 “사용자별 API key” 딕셔너리를 유지합니다
6
6단계: Feishu의 Coze 워크플로우 단축키를 연결합니다
Feishu 공식 또는 사용자 지정 “Coze 워크플로우 호출” 필드 단축키를 Bitable에 추가하고, 아래와 같이 구성합니다:
핵심 사항:

- Coze의 workflow token과 workflow ID를 입력합니다
- 요청 템플릿의 필드 이름은 Coze 워크플로우 입력 이름과 정확히 일치해야 합니다
- 필수 필드는 Coze 워크플로우의 required 플래그를 따릅니다
apichoice열에는apiyi를 넣어야 하며,apiyi(0.35元/张)같은 표시 문자열은 절대 넣으면 안 됩니다 — 그렇지 않으면 딕셔너리 조회가 실패합니다
7
7단계: URL → 첨부로 결과를 렌더링합니다
마지막 단계: Coze가 반환한 URL을 Feishu 이미지 첨부로 변환합니다. 두 가지 방법이 있습니다:
- 직접 구매: 공식 Coze “URL → 첨부” 필드 단축키를 사용합니다
- 직접 구현: Feishu 문서를 따라 사용자 지정 URL-첨부 필드 단축키를 구현합니다
Bitable 병합 수식
Bitable의 “Merged prompt” 수식입니다:CHAR(10)는 줄바꿈이며, Coze 코드 노드가 prompt와 image URLs를 \n로 구분하도록 합니다.
Feishu 필드 바로가기 전체 소스
아래에는 완전한feishu-attachment-to-oss.ts가 있으며, Feishu 필드 바로가기 프레임워크에 바로 넣을 수 있습니다. 배포 전에, 두 개의 feishu-service 플레이스홀더만 Aliyun FC 공개 도메인 / URL로 교체하면 됩니다.
feishu-attachment-to-oss.ts
Aliyun Function Compute 전체 소스
아래는 Aliyun Function Compute(Node.js 18+)에 바로 붙여 넣을 수 있는 완전한aliyun-fc-oss-upload.js입니다. 모든 자격 증명은 환경 변수에서 읽습니다 — 절대 하드코딩하지 마십시오.
aliyun-fc-oss-upload.js
Coze Plugin Source
Python 플러그인coze-nanobanana-pro.py은 Nano Banana Pro Coze Plugin의 “플러그인 전체 소스” 섹션에 완전히 포함되어 있습니다. 복사하여 붙여넣기만 하면 되며, 별도 다운로드는 필요 없습니다.
보안 참고사항
자주 묻는 질문
Feishu 바로가기가 Aliyun FC에 연결되지 않습니다
Feishu 바로가기가 Aliyun FC에 연결되지 않습니다
두 가지를 확인합니다:
- FC 공개 도메인이
basekit.addDomainList에 있습니까 (https:// 제외)? context.fetch이 전체https://URL을 사용하고 있습니까?
Coze 워크플로에서 계정 또는 설정 오류가 표시됩니다
Coze 워크플로에서 계정 또는 설정 오류가 표시됩니다
먼저 확인합니다:
apichoice열에apiyi가 들어 있습니까(apiyi(0.35元/张)같은 표시 문자열이 아니라)?- 호출자가 “사용자별 API key” 사전에 나열되어 있습니까?
- 호출자의 이름이 Bitable 사람 필드와 정확히 일치합니까(공백, 간체/번체 포함)?
이미지는 생성되었지만 Feishu에 표시되지 않습니다
이미지는 생성되었지만 Feishu에 표시되지 않습니다
Coze는 기본적으로 텍스트 URL을 반환합니다. Feishu가 렌더링하려면 또 다른 “URL → 첨부파일” 바로가기가 필요합니다. 다음 중 하나를 선택합니다:
- Coze의 공식 “URL → 첨부파일” 바로가기를 구매합니다(가장 쉬움)
- 직접 URL-첨부파일 변환 바로가기를 만듭니다
Aliyun FC가 500을 반환하지만 OSS 업로드는 성공했습니다
Aliyun FC가 500을 반환하지만 OSS 업로드는 성공했습니다
보통
processObjectSave 매개변수 또는 버킷 리전 불일치 때문입니다. 다음을 확인합니다:- 버킷에서 이미지 처리가 활성화되어 있습니까?
process.env.OSS_REGION이 버킷의 실제 리전과 일치합니까?- RAM 하위 계정에
oss:ProcessObject권한이 있습니까?
배치 생성을 어떻게 제한합니까?
배치 생성을 어떻게 제한합니까?
Nano Banana Pro 4K는 느립니다. 권장 사항은 다음과 같습니다:
- Coze 워크플로 진입점에 동시 실행 수 제한을 추가합니다
- Bitable의 필드 바로가기를 한 번에 5~10행씩 배치로 트리거합니다
- 서로 다른 APIYI 키를 호출자별로 분산하여 요청 제한을 분산합니다
전체 코드는 어디에 있습니까? 직접 복사할 수 있습니까?
전체 코드는 어디에 있습니까? 직접 복사할 수 있습니까?
네 — 모든 구성 요소가 문서에 포함되어 있으며(Shuaila1996 기여), 바로 복사하여 붙여넣을 수 있습니다:
feishu-attachment-to-oss.ts(Feishu 필드 바로가기) → 이 페이지 위쪽의 “Feishu Field Shortcut Full Source”를 참조합니다aliyun-fc-oss-upload.js(Aliyun FC) → 이 페이지 위쪽의 “Aliyun Function Compute Full Source”를 참조합니다coze-nanobanana-pro.py(Coze 플러그인) → Nano Banana Pro Coze Plugin의 “Plugin Full Source”를 참조합니다
관련 자료
Nano Banana Pro Coze 플러그인
보조 Coze 플러그인 코드와 상세 가이드입니다 — Nano Banana Pro가 필요한 모든 Coze 워크플로에서도 단독으로 유용합니다
Nano Banana Pro 문서
전체 API 문서, 과금, 그리고 생성 샘플입니다
이미지 생성 실패 FAQ
Nano Banana 실패 문제 해결 가이드입니다
APIYI 콘솔
API 키를 관리하고, 사용량과 잔액을 확인합니다