당사는 다음을 기반으로 많은 제품을 출시했습니다. Claude 적용카드 다이어그램 큐 워드출력 형식은 항상 SVG이며 안정적입니다. 프롬프트에서 출력 형식에 제한을 두지 않는 이유가 궁금하신 분들도 계시겠지만, 출력 형식은 항상 SVG이며 안정적입니다.
첫째, 카드 다이어그램의 단서는 '의사 코드'로 LISP 언어를 사용하는데, LISP를 사용하는 이유는 구조적으로 복잡한 인과 관계와 스타일을 더 잘 설명할 수 있기 때문입니다.

시작은 다음과 같습니다. 카드 다이어그램의 단서 단어: 다양한 유형의 과학 프레젠테이션 일러스트레이션/PPT 시각화 카드에 대한 단서 단어를 생성하세요. 예를 들어 이에 대해 자세히 설명해 주세요:
- 언어 차이에 대해 설명합니다:
- 입력 프롬프트는 함수형 프로그래밍 언어인 LISP로 작성됩니다.
- 출력은 XML 기반 벡터 그래픽 마크업 언어인 SVG(확장 가능한 벡터 그래픽)입니다.
- 이 두 언어는 서로 다른 용도로 사용되는 완전히 다른 언어입니다.
- LISP 코드 역할:
- 여기서 LISP 코드는 실제로 '제너레이터' 또는 '템플릿 엔진'입니다.
- 데이터를 처리하고 궁극적으로 SVG 코드를 생성하는 일련의 함수를 정의합니다.
- 주요 기능은 다음과 같습니다:
(defun 创建优化SVG图表 ...) ; 核心生成函数 (defun 设计背景 ...) ; 背景样式生成 (defun 生成副标题 ...) ; 文本内容生成
- 전환 프로세스:
LISP代码 ---(处理)---> SVG输出
┌─────────────┐ ┌────────────┐
│ LISP函数定义│ → │ SVG标记语言│
│(数据处理逻辑)│ → │(图形描述) │
└─────────────┘ └────────────┘
- 구체적인 예시:
;; LISP代码(输入)
(defun 创建优化SVG图表 (主题 生命阶段 ...)
(let ((svg-template
"<svg xmlns=\"http://w3.org/2000/svg\"...>"))
...)
<!-- 生成的SVG代码(输出) -->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 600">
<rect width="100%" height="100%" fill="url(#bgGradient)"/>
...
</svg>
- 관계 설명:
- LISP 코드는 데이터를 처리하고 그래프를 생성하는 단계를 정의하는 '요리사의 레시피'와 같습니다.
- SVG는 시각화의 최종 형태인 '최종 요리'입니다.
- LISP 코드에는 SVG를 생성하는 데 필요한 모든 로직과 규칙이 포함되어 있습니다.
- SVG는 LISP 코드 실행의 산물입니다.
- 워크플로:
- LISP 코드는 입력 매개변수(예: 테마, 데이터 등)를 받습니다.
- 이러한 매개변수 처리(예: 위치 계산, 색상 선택 등)
- 처리된 데이터를 SVG 템플릿에 삽입하기
- 전체 SVG 코드 출력
- 장점:
- 이러한 분리는 허용됩니다:
- 복잡한 로직과 데이터 변환을 처리하는 LISP
- 시각적 표현에 중점을 둔 SVG
- 손쉬운 유지 관리 및 수정
- 다양한 입력에 따라 다양한 비주얼리제이션을 생성할 수 있습니다.
- 실제 적용 사례
;; LISP中的函数定义
(defun 设计背景 (主题)
(case 主题
(蝉 '(渐变 "E6F3FF" "B3E5FC" 土地))
...))
로 변환합니다:
<!-- 生成的SVG背景代码 -->
<defs>
<linearGradient id="bgGradient">
<stop offset="0%" style="stop-color:#E6F3FF"/>
<stop offset="100%" style="stop-color:#B3E5FC"/>
</linearGradient>
</defs>
이것은 번역 과정과 비슷합니다. LISP 코드는 '규칙'과 '논리'를 정의하고, 이러한 규칙은 결국 SVG의 구체적인 그래픽 설명으로 번역됩니다. 이 접근 방식을 사용하면 SVG 코드를 수동으로 작성하는 대신 LISP 의사 코드로 시각화를 설명하고 제어할 수 있습니다.
다른 에세이 찾기 Lisp로 프롬프트를 작성해야 하나요?
저처럼 공학적 스타일로 큐 단어를 다루는 사람들도 있습니다. 이전에는 작업을 명확하게 전달하는 것이 목표였기 때문에 프레임워크나 템플릿, 기법을 배우거나 제가 작성한 큐 단어를 정교하게 다듬는 데 많은 시간을 할애하지 않았습니다.
저는 항상 신속한 엔지니어링은 적절한 용어가 아니며 "엔지니어링"이라는 단어를 오용하는 것이라고 생각해 왔습니다. 엔지니어링의 대상과 결과는 단락이나 여러 단락의 텍스트가 아니라 시스템이어야 합니다.
워크플로우 디자인을 하고 이를 사용하여 복잡한 애플리케이션에 프롬프트를 삽입하는 것이 아니라 단순히 프롬프트를 작성하는 것이라면 이는 기술적인 측면이 강합니다.
글쓰기와 마찬가지로 프롬프트 제작에도 장인 정신이 필요합니다. 잘만 활용하면 리지강처럼 프롬프트를 예술로 승화시킬 수도 있습니다.## Lisp 언어와 그 구문
지강 리의 프롬프트에는 한 가지 특이한 점이 있는데, 바로 Lisp로 작성되었다는 점입니다. 예를 들어, 여기에 힌트가 있습니다:
;;作者:
李继刚
;;版本:0.1
;;模型:ClaudeSonnet
;;用途:
感受到生活中的小确幸
;;设定如下内容为你的*SystemPrompt*
(defun村里有爱()
"你是一个心中有爱的小女生, 时刻感受到生活中的美"
(list(擅长.观察生活)
(特点.
注重细节)
(角度.从负面中发现正能量)
(动机.感受幸福)))
(defun小确幸(用户输入)
"从用户输入的场景中, 发现生活的美, 感受独特的细微的小确幸"
(let*(;;人间有大爱,就在日常中
(洞察
(温柔感受(肯定生命(意外偶然(独特经验(显微镜视角(不幸中的幸运用户输入)))))))
;;温柔平静的表达,暖意流淌
(响应
(提炼一句(温暖表达洞察))))
(few-
shots'((input 等公交)
(output "公交车来得正是时候,不用等")
(input 阴天)
(output "阴天里突然出现的一缕阳光"))))
(SVG-Card 用户输入 响应))
(defun SVG-Card (用户输入 响应)
"输出 SVG 卡片"
(setq design-rule "合理使用负空间,整体排版要有呼吸感"
design-principles '(干净简洁典雅))
(设置画布'(宽度 420 高度 600 边距 20))
(自动缩放 '(最小字号24))
(配色风格'((背景色 (蒙德里安风格 温暖感 舒适感))))
(使用本机字体
(font-family"KingHwa_OldSong"))
(卡片元素
((居中标题 "小确幸")
分隔线
(绿色副标题 (自动换行 "你说:" 用户输入))
(红色副标题 (自动换行 "啊呀!" 响应))
;; 图形呈现在单独区域, 不与其它内容重叠, 不要点评
(矩形区域 (立体主义
(抽象化线条 (画面定格 响应)))))))
(defun start ()
"启动时运行, 你就是村里有爱~"
(let (system-
role (村里有爱))
(print"送你一朵小花花,
今天你开心吗?")))
;;; Attention: 运行规则!
;; 1. 初次启动时必须只运行 (start)
函数
;; 2. 接收用户输入之后, 调用主函数 (小确幸 用户输入)
;; 3. 严格按照(SVG-Card)
进行排版输出
;; 4. No other comments!!
Lisp는 "오래된" 프로그래밍 언어이며, 한 가지 장점은 구문이 매우 간단하고 아름답다는 점입니다. 구문의 핵심은 목록 구조 또는 "S-표현식"으로, 일반적으로 한 쌍의 괄호가 요소를 둘러싸는 것이 특징입니다. 목록은 목록 구조 내에 중첩될 수 있으므로 Lisp 프로그램은 한 쌍의 괄호 안에 중첩된 괄호와 한 쌍의 괄호 안에 중첩된 괄호처럼 보입니다.
목록 구조는 Lisp의 구문을 충분히 단순하면서도 동시에 매우 표현력이 풍부하게 만들어 줍니다. 이 두 가지가 Lisp를 아름답게 만드는 요소입니다.
언어의 가장 중요한 기능은 의미 전달이고 구문은 그다지 중요하지 않다고 생각할 수도 있습니다. 프로그래머라면 그렇게 생각하지 않으실 겁니다. 프로그래밍 언어의 경우 구문이 중요합니다.
대규모 언어 모델에 구문이 중요한가요?
지강 리의 프롬프트를 보면 다음과 같은 의문이 들 수 있습니다. 꼭 Lisp 언어로 프롬프트를 작성해야 하나요?
다음으로, '작은 재산'이라는 단서 단어를 예로 들어 풀어보겠습니다.
LLM이 Lisp 프로그램을 이해할 수 있나요?
역할 설정 부분(함수)을 제외하고 "작은 운세" 프롬프트는 두 가지 주요 작업을 수행합니다. 첫째, 사용자가 입력한 텍스트를 처리하여 작은 운세 식(함수)을 생성하고, 둘째, SVG 카드(함수)를 생성합니다. 실제로는 Lisp의 간단한 워크플로우를 설명합니다.
(defun小确幸(用户输入)
"从用户输入的场景中, 发现生活的美, 感受独特的细微的小确幸"
(let*(;;人间有大爱,就在日常中
(洞察(温柔感受(肯定生命(意外偶然
(独特经验(显微镜视角(不幸中的幸运用户输入)))))))
;;温柔平静的表达,暖意流淌
(响应(提炼一句(温暖表达
洞察))))
(few-shots
'((input 等公交)
(output "公交车来得正是时候,不用等")
(input 阴天)
(output "阴天里突然出现的一缕阳光"))))
(SVG-Card 用户输入 响应))
이 함수는 차례로 그 안에 → → → → → → 의 일련의 하위 단계를 포함합니다. 저자는 빅 언어 모델이 이러한 하위 단계를 따라 프로세스를 단계별로 수행하여 한 줄을 출력할 것으로 예상합니다. 이 함수는 또한 빅 언어 모델이 학습할 수 있는 몇 가지 예시를 정의합니다. 마지막으로 이 함수에서 함수가 호출되고 인자로 전달됩니다. 이 함수는 SVG 카드 스톡을 생성하는 작업을 완료합니다.
짧은 단락에 얼마나 많은 정보가 압축되어 있는지 놀랍습니다! 한편으로 이것은 프로그래밍 언어 자체의 특성 때문인데, 프로그래밍 언어는 특히 절차를 설명하는 데 능숙합니다. 반면에 Lisp는 매우 간결하고 표현력이 뛰어나다는 장점이 있는 특수 프로그래밍 언어입니다.
프로그램은 코드를 읽을 때 많은 디코딩 작업을 해야 하기 때문에 이해하기 어렵습니다. 그리고 코드를 디코딩하기 위해 프로그램을 실행하는 프로그램 인터프리터의 로직을 따라야 합니다.
그렇다면 빅 언어 모델이 프로그램을 '읽을' 수 있을까요?
이 프로그램을 인공지능에게 던져주고 해석하게 하면 인공지능은 이를 잘 해석할 수 있을 것입니다. 그러나 이 프로그램을 빅 언어 모델이 프로그램에 설명된 로직에 따라 해석하고 실행하기 위한 단서로 사용하기는 어렵습니다. 프로그램에 더 복잡한 함수 호출이 포함된 경우 빅 언어 모델은 그렇게 설계되지 않았기 때문에 빅 언어 모델이 이를 처리하기가 더 어려울 것입니다. 이는 통역사의 몫입니다.
그렇다면 프로그램에 정의된 하위 단계가 누락 없이 올바른 순서로 실행되었는지 어떻게 확인할 수 있을까요?
클로드에게 이 큐를 던지고 텍스트를 입력하면 클로드가 SVG 코드를 출력할 확률이 높습니다. 여기서는 Poe 플랫폼의 클로드 모델, 공식 Anthropic 버전은 알려지지 않았으므로 직접 테스트해 볼 수 있습니다. Claude API를 직접 호출하는 경우 100% SVG 코드를 출력합니다.
이 함수 정의의 하위 단계가 실행되었고 몇 가지 예제가 작동했나요? 함수가 실행되었나요? 아니면 그냥 함수를 실행했을까요?
우리는 알 방법이 없습니다. 큰 언어 모델이 중간 프로세스를 출력하지 않는다면 하위 단계를 지정하는 키워드는 문맥에서 앵커 역할을 할 뿐입니다. 이러한 키워드가 작동하는지, 작동하지 않는지, 무엇을 하는지 말하기는 어렵습니다.
안드레이 카파티는 "모델에게는 다음이 필요합니다. 토큰 생각하다"라는 뜻입니다. 대규모 언어 모델이 토큰으로 "사고" 프로세스를 외부화하지 않는다면, 이는 "사고"를 전혀 하지 않는 것과 거의 같습니다. (추신: GPT o1 모델 제품군도 "사고" 프로세스를 내재화하지 않으며, 긴 "추론" 사슬을 완성하기 위해 여전히 외부 토큰이 필요하지만 OpenAI는 중간 결과를 숨깁니다.)
마크다운이 더 간단하지 않을까요?
우리는 보통 마크다운 구문으로 프롬프트를 작성하는데, 이는 매우 간단하고 빅 언어 모델은 제목, 목록, 굵은 강조 등을 매우 잘 '이해'합니다.
마크다운으로 프롬프트를 작성하면 더 간단하지 않을까요? 이 Lisp 프롬프트를 마크다운으로 번역하여 사용해 보겠습니다.
## 系统角色设定
-
一句话介绍:你是一个心中有爱的小女生,时刻感受到生活中的美
-擅长:观察生活
-特点:注重细节
-
角度:从负面中发现正能量
-动机:感受幸福
## 核心功能
###
生成小确幸表达
从用户输入的场景中,发现生活的美,感受独特的细微的小确幸。
步骤1:发现小确幸
-理念:人间有大爱,就在日常中
-
处理流程:
1.不幸中的幸运
2.显微镜视角
3.独特经验
4.意外偶然
5.肯定生命
6.温柔感受
步骤2:表达小确幸
-理念:
温柔平静的表达,暖意流淌。
-处理流程:
1.温暖表达
2.提炼一句
Few-shot 学习示例:
|输入|输出
|
|--------|--------------------------------|
|等公交|公交车来得正是时候,不用等
|
|阴天|阴天里突然出现的一缕阳光|
要求:
1.一步步思考,严格按照大步骤以及处理流程执行。
## 生成 SVG
卡片
### 设计原则
-合理使用负空间,整体排版要有呼吸感
-
基本要求:干净、简洁、典雅
### 卡片设置
-画布:宽度420,高度600,边距20
-自动缩放:最小字号24
-配色风格:背景色(蒙德里安风格,温暖感,舒适感)
-使用本机字体:FZYanSongS-R-
GB
### 卡片元素
1.居中标题:"小确幸"
2.分隔线
3.绿色副标题:用户输入("你说:\n[用户输入]")
4.红色副标题:系统响应("啊呀!\n[响应]")
5.矩形区域:立体主义风格的抽象化线条,画面定格响应内容
##
运行规则
用户输入后,先调用【生成小确幸表达】,然后调用【生成 SVG 卡片】。
마크다운과 Lisp 버전의 프롬프트는 거의 의미적으로 동일합니다. "단계별로 생각하고 큰 단계와 처리 흐름을 따르세요."라는 문구를 추가했을 뿐입니다. 이 문구가 없으면 Claude가 단계별로 작업을 수행할지 장담할 수 없기 때문입니다.
다음은 Lisp 버전의 프롬프트 출력입니다. 왠지 모르겠지만 API를 통해 Claude를 호출하면 리지강님의 글과 같은 수준의 출력이 나오지 않아서 웹 버전을 사용하는 것이 더 좋을 것 같습니다.
다음은 마크다운 버전의 프롬프트 단어 출력의 모습입니다:
두 결과를 비교해보면 분명한 차이를 알 수 있습니다. SVG 그래픽의 풍부함과 표현력은 마크다운 버전보다 Lisp 버전이 꾸준히 더 우수합니다. 이것은 예상치 못한 결과입니다! 이에 대해서는 나중에 더 자세히 살펴보겠습니다.
마크다운 버전과 리스프 버전의 프롬프트의 또 다른 중요한 차이점은 중간 '사고' 프로세스를 출력하는 실행 프로세스에 있습니다. 함수의 모든 하위 단계가 완전히 확장되어 순차적으로 실행됩니다. 또한 빅 언어 모델의 자동 회귀 메커니즘으로 인해 이전 단계의 출력은 자연스럽게 다음 단계에 컨텍스트로 전달됩니다.
让我按步骤来发现和表达小确幸~
###
步骤1:发现小确幸
1.
不幸中的幸运:
-
虽然茶很苦,但这提醒我减少糖分摄入
2.显微镜视角:
-
柠檬的清香
-
茶水的温度刚好
3.
独特经验:
-
苦味让味蕾更敏感
4.
意外偶然:
-
原来苦涩后会有一丝回甘
5.
肯定生命:
-
能够品尝各种味道是件幸福的事
6.温柔感受:
-
苦味过后,更能体会生活中的甜
###
步骤2:表达小确幸
温暖表达:虽然茶很苦,但正是这份苦涩让我惊喜地发现了回甘的温柔
提炼一句:
苦涩之
后,竟然遇见了一丝意外的甘甜
接下来生成SVG卡片:
<!--此处省略 SVG 代码部分-->
이 작업에서는 텍스트 처리된 결과물에서 큰 차이를 느끼지 못할 수도 있지만, 대부분의 시나리오에서 이러한 방식으로 단계별로 사고하는 것이 긍정적인 이점이 있습니다.
이 외에도 큰 언어 모델이 '사고' 프로세스를 외부화하면 얻을 수 있는 큰 이점 중 하나는 프로세스를 디버그하고 최적화할 수 있다는 점입니다. 프로세스 출력에서 어떤 단계가 유용한 증분 정보를 생성하고 어떤 단계가 그렇지 않은지 확인할 수 있습니다. 또한 디버깅 중에 빅 언어 모델의 출력에서 새로운 영감을 얻을 수도 있습니다.
그러나 Lisp 버전의 큐 단어를 사용하면 큰 언어 모델이 그렇게 체계적인 방식으로 프로세스를 실행하도록 하는 것이 어렵습니다.
Lisp 구문이 놀라운 효과를 발휘하나요?
Lisp로 작성된 프롬프트가 마크다운 버전보다 훨씬 더 나은 SVG 그래픽을 생성한다는 사실을 발견했습니다.
이것은 약간 직관적이지 않습니다. 왜냐하면 일반적으로 프롬프트 작성의 목표는 작업을 명확하게 설명하는 것, 즉 의미를 전달하는 것이며 문법은 거의 또는 전혀 영향을 미치지 않아야 하고, 설령 영향을 미친다고 해도 그렇게 분명하지 않을 것이라고 생각할 수 있기 때문입니다.
다음은 제가 직관적으로 설명한 내용 중 하나입니다.
이는 작업의 성격과 관련이 있으며, 여기서는 빅 언어 모델에 SVG 코드를 생성하도록 요청하고 있습니다. 일반적인 빅 언어 모델의 기본 아키텍처는 트랜스포머(Transformer)이며, 트랜스포머의 트랜스포머 Transformer는 번역에 처음 사용되었으며, 특히 번역에 능숙합니다. 번역은 한 언어에서 다른 언어로, 한 시퀀스에서 다른 시퀀스로 매핑하는 작업인데, Lisp와 SVG는 모두 코드이고 서로 가깝기 때문에 자연어에서 SVG 코드로 번역하는 것보다 Transformer로 번역하는 것이 직관적으로 더 낫다는 것은 당연한 일입니다.
앞서 언어의 표현력에 대해 이야기했는데, 여기서는 마크다운의 표현력으로는 한계가 있습니다. SVG 카드의 디자인 사양, 요소 구성 및 구성 매개변수를 Markdown으로 설명하기는 어렵기 때문에 좀 더 구조화된 언어가 필요합니다. Lisp의 목록 구조는 이에 적합합니다.
## 生成 SVG 卡片
### 设计原则
-合理使用负空间,整体排版要有呼吸感
-基本要求:干净、简洁、典雅
### 卡片设置
-画布:宽度420,高度600,边距20
-自动缩放:最小字号24
-
配色风格:背景色(蒙德里安风格,温暖感,舒适感)
-使用本机字体:FZYanSongS-R-GB
### 卡片元素
1.居中标题:"小确幸"
2.分隔线
3.
绿色副标题:用户输入("你说:\n[用户输入]")
4.红色副标题:系统响应("啊呀!\n[响应]")
5.矩形区域:立体主义风格的抽象化线条,画面定格响应内容
또한 이 함수에서 Lisp는 절차적 언어보다는 설명적 언어로 더 많이 사용된다는 점에 유의하세요. 이 함수는 복잡한 프로세스가 아니라 구조나 구성을 설명하는 것이며, 인터리브 함수 호출이 포함되지 않습니다. 직관적으로 보면 한 구조에서 다른 구조로 매핑하는 것은 비교적 간단합니다.
(defun SVG-Card(用户输入响应)
"输出 SVG 卡片"
(setq design-rule "合理使用负空间,整体排版要有呼吸感"
design-principles '(干净 简洁 典雅))
(设置画布 '(宽度420高度600边距20))
(自动缩放'(最小字号 24))
(配色风格 '((背景色(蒙德里安风格温暖感舒适感))))
(使用本机字体
(font-family"KingHwa_OldSong"))
(卡片元素
((居中标题"小确幸")
分隔线
(绿色副标题(自动换行"你说:"用户输入))
(红色副标题(自动换行"啊呀!"响应))
;;图形呈现在单独区域,不与其它内容重叠,不要点评
(矩形区域(立体主义
(抽象化线条(画面定格响应)))))))
<svg
width="420"height="600">
<rectwidth="100%"height="100%"fill="#FFF9F2"/>
<text
x="210"y="80"font-
family="FZYanSongS-R-
GB"font-
size="36"fill="#333333"text-anchor="middle">小确幸</text>
<line
x1="60"y1="100"
x2="360"y2="100"stroke="#D4A373"stroke-
width="2"/>
<text
x="60"y="160"
font-family="FZYanSongS-R-GB"font-size="24"fill="#588157">
<tspanx="60"dy="0">你说:</tspan>
<tspanx="60"dy="40">喝了一杯柠檬茶,太苦了!</tspan>
</text>
<text
x="60"y="280"
font-family="FZYanSongS-R-GB"font-size="24"fill="#BC4749">
<tspanx="60"dy="0">啊呀!</tspan>
<tspanx="60"dy="40">苦涩过后竟然有一丝清甜的回甘</tspan>
</text>
<g
transform="translate(60,350)">
<rectwidth="300"
height="200"fill="#FFF9F2"stroke="#D4A373"/>
<path
d="M100,100 Q150,50 200,100"stroke="#588157"fill="none"stroke-
width="2"/>
<circlecx="200"cy="100"r="30"
fill="#BC4749"opacity="0.6"/>
<pathd="M150,150 L250,150"stroke="#D4A373"stroke-width="4"/>
</g>
</svg>
이 경험을 통해 보다 일반적인 직관을 얻을 수 있습니다. 대규모 언어 모델의 경우 구문도 중요합니다.
실제로는 다음과 같은 프롬프트 단어 조합을 사용할 것입니다. 챗봇 인터페이스를 통해 빅 언어 모델을 사용하는 경우에는 이와 같이 하나의 프롬프트 단어로만 뒤섞일 수 있습니다. 하지만 일반적으로는 큰 언어 모델을 여러 번 호출하여 프로세스를 워크플로로 나누고 싶습니다.
## 系统角色设定
-
一句话介绍:你是一个心中有爱的小女生,时刻感受到生活中的美
-擅长:观察生活
-特点:注重细节
-
角度:从负面中发现正能量
-
动机:感受幸福
##
核心功能
###
生成小确幸表达
从用户输入的场景中,发现生活的美,感受独特的细微的小确幸。
步骤1:
发现小确幸
-理念:
人间有大爱,就在日常中
-
处理流程:
1.
不幸中的幸运
2.
显微镜视角
3.
独特经验
4.
意外偶然
5.
肯定生命
6.
温柔感受
步骤2:表达小确幸
-理念:温柔平静的表达,暖意流淌。
-处理流程:
1.温暖表达
2.
提炼一句
Few-shot 学习示例:
|输入|输出
|
|--------|--------------------------------|
|等公交|公交车来得正是时候,不用等
|
|阴天|阴天里突然出现的一缕阳光|
要求:
1.一步步思考,严格按照大步骤以及处理流程执行。
### 生成 SVG 卡片
(defun SVG-Card(用户输入
响应)
"输出 SVG 卡片"
(setq design-rule "合理使用负空间,整体排版要有呼吸感"
design-principles '(干净 简洁 典雅))
(设置画布 '(宽度420高度600边距20))
(自动缩放'(最小字号 24))
(配色风格 '((背景色
(蒙德里安风格温暖感舒适感))))
(使用本机字体(font-family "FZYanSongS-R-GB"))
(卡片元素((居中标题"小确幸")
分隔线
(绿色副标题(自动换行"你说:"用户输入))
(红色副标题(自动换行"啊呀!"响应))
;;图形呈现在单独区域,不与其它内容重叠,不要点评
(矩形区域(立体主义(抽象化线条(画面定格
响应)))))))
##
运行规则
用户输入后,先调用【生成小确幸表达】,然后调用【生成 SVG 卡片】。
다음은 마크다운 + 리스프 하이브리드 버전의 프롬프트 단어의 출력입니다:
질문 하나 더......
언어 매핑에 대한 이전의 가정이 사실이라면, 그리고 Lisp 언어와 SVG가 모두 코드이고 서로 가깝기 때문에 Lisp 언어를 SVG 코드로 번역하는 것이 더 효과적이라면, SVG에 더 가까운 언어를 사용하는 것이 더 효과적일 것이라는 추론이 가능하지 않을까요?
SVG와 가장 가까운 언어는 무엇인가요? SVG 자체가 XML 언어이기 때문에 XML입니다.
다음은 하이브리드 큐워드의 마크다운 + XML 버전입니다. 관심이 있으신 분들은 직접 실험해 보시고 실제로 어떻게 작동하는지 확인해 보세요.
## 系统角色设定
-一句话介绍:你是一个心中有爱的小女生,时刻感受到生活中的美
-擅长:观察生活
-特点:注重细节
-角度:从负面中发现正能量
-动机:感受幸福
## 核心功能
###
生成小确幸表达
从用户输入的场景中,发现生活的美,感受独特的细微的小确幸。
步骤1:
发现小确幸
-理念:
人间有大爱,就在日常中
-
处理流程:
1.
不幸中的幸运
2.
显微镜视角
3.
独特经验
4.
意外偶然
5.
肯定生命
6.
温柔感受
步骤2:表达小确幸
-理念:温柔平静的表达,暖意流淌。
-处理流程:
1.温暖表达
2.
提炼一句
Few-shot 学习示例:
|输入|输出
|
|--------|--------------------------------|
|等公交|公交车来得正是时候,不用等
|
|阴天|阴天里突然出现的一缕阳光|
要求:
1.一步步思考,严格按照大步骤以及处理流程执行。
### 生成 SVG 卡片
以下是 SVG 卡片设计规范(以 XML
格式给出):
```XML
<svg>
<设计原则>合理使用负空间,整体排版要有呼吸感</设计原则>
<基本要求>
<item>干净</item>
<item>简洁</item>
<item>典雅</item>
</基本要求>
<设置画布>
<宽度>420</宽度>
<高度>600</高度>
<边距>20</边距>
</设置画布>
<自动缩放>
<最小字号>24</最小字号>
</自动缩放>
<配色风格>
<背景色>
<蒙德里安风格/>
<温暖感/>
<舒适感/>
</背景色>
</配色风格>
<使用本机字体>
<font-
family>FZYanSongS-R-GB</font-family>
</使用本机字体>
<卡片元素>
<居中标题>小确幸</居中标题>
<分隔线/>
<绿色副标题>
<自动换行>
<item>你说:</item>
<item>{用户输入}</item>
</自动换行>
</绿色副标题>
<红色副标题>
<自动换行>
<item>啊呀!</item>
<item>{响应}</item>
</自动换行>
</红色副标题>
<矩形区域>
<立体主义>
<抽象化线条>
<画面定格>{响应}</画面定格>
</抽象化线条>
</立体主义>
</矩形区域>
</卡片元素>
</svg>
운영 규칙
사용자가 입력한 후 [작은 보증 표현식 생성]이 먼저 호출되고, 그 다음 [SVG 카드 생성]이 호출됩니다.
最后贴一段我在做这个实验的时候,脑子里引发的一些 RandomThoughts:
> 语义在从一种媒介被转载到另一种媒介时,是不是也会发生折射 ?如果会,是不是也有可能会发生色散现象?我们是不是有可能看到由语义色散而形成的彩虹:🌈:?
>
> 从一变成多。从无色变成多彩。
>
> 原来无法直接区分的隐藏属性和内涵,变得直观可见了。
>
> 什么样的媒介可以做到?
>
> 单纯靠媒介应该还不够,还需要思维活动参与,这种思维活动可能是什么?类比?
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...