Преглед изворни кода

修改豆包ai接口描述,重新生成seo信息

guoziyun пре 1 година
родитељ
комит
99a09ded93
5 измењених фајлова са 56 додато и 63 уклоњено
  1. 37 44
      dist/policy.html
  2. 6 4
      models/schema-art.js
  3. 0 1
      service/cron-jobs/doubao.json
  4. 7 4
      service/cron-jobs/fetch-meta.js
  5. 6 10
      views/common-meta.ejs

Разлика између датотеке није приказан због своје велике величине
+ 37 - 44
dist/policy.html


+ 6 - 4
models/schema-art.js

@@ -56,10 +56,12 @@ let artSchema = new Schema({
   width: { type: Number, required: true, index: true, desc: '宽' },
   height: { type: Number, index: true, required: true, desc: '高' },
   name: { type: String, required: true, desc: '作品名', searchable: true },
-  // 暂时没有用到,预留网站seo
-  desc: { type: String, desc: '作品描述', searchable: true },  // 考虑存json字符串,形如: {zh: '中国', en: 'China'}
-  // 新增字段,与原来的name相区别
-  title: { type: String, desc: '作品标题', searchable: true },
+  // 网站seo meta  description, 160个字符以内
+  desc: { type: String, desc: '作品描述', searchable: true },  // json字符串,形如: {zh: '中国', en: 'China'}
+  // 新增字段,网站title,60个字符以内
+  title: { type: String, desc: '作品标题', searchable: true }, // json字符串,形如: {zh: '中国', en: 'China'}
+  // 文案描述, 200字左右
+  copy: { type: String, desc: '文案描述', searchable: true }, // json字符串,形如: {zh: '中国', en: 'China'}
   use: { type: String, required: true, index: true, default: 'normal', lowercase: true, trim: true, desc: '用途', searchable: true },
   tags: { type: [String], index: true, lowercase: true, trim: true, desc: '标签', searchable: true },
 

Разлика између датотеке није приказан због своје велике величине
+ 0 - 1
service/cron-jobs/doubao.json


+ 7 - 4
service/cron-jobs/fetch-meta.js

@@ -13,7 +13,7 @@ curl --location 'https://ark.cn-beijing.volces.com/api/v3/chat/completions' \
         {"role": "user", "content": [
             {
                 "type":"text",
-                "text": "根据图片生成多语言的标题和200字以内的文案描述, 支持语言中文(zh)、英语(en)、西班牙语(es)、葡萄牙语(pt)、日语(ja),以json格式输出,形如: title: {zh:, en:}, copy: {zh: en:}"
+                "text": "根据图片生成标题(title, 60个字符以内)、简要描述(description, 用于网站SEO的meta description,160个字符以内,尽量包含Coloring Page关键字)、文案描述(copy, 200字左右,尽量包含Coloring Page 关键字)。 以json格式输出,支持语言中文(zh)、英语(en)、西班牙语(es)、葡萄牙语(pt)、日语(ja),形如: { title: {zh:'', en:'', es: '', pt: '', ja: ''}, description: {zh:'', en:'', es: '', pt: '', ja: ''}, copy:{zh:'', en:'', es: '', pt: '', ja: ''} }"
             },
             {
                 "type": "image_url",
@@ -46,7 +46,7 @@ async function fetchMetaFromDoubao(imageUrl) {
         "role": "user", "content": [
           {
             "type": "text",
-            "text": "根据图片生成多语言的标题和描述文案(文案200字左右,尽量不要出现诸如画面中、这幅画这样的废话), 支持语言中文(zh)、英语(en)、西班牙语(es)、葡萄牙语(pt)、日语(ja),以json格式输出,形如: title: {zh:, en:}, copy: {zh: en:}"
+            "text": "根据图片生成标题(title, 60个字符以内)、简要描述(description, 用于网站SEO的meta description,160个字符以内,尽量包含Coloring Page关键字)、文案描述(copy, 200字左右,尽量包含Coloring Page 关键字)。 以json格式输出,支持语言中文(zh)、英语(en)、西班牙语(es)、葡萄牙语(pt)、日语(ja),形如: { title: {zh:'', en:'', es: '', pt: '', ja: ''}, description: {zh:'', en:'', es: '', pt: '', ja: ''}, copy:{zh:'', en:'', es: '', pt: '', ja: ''} }"
           },
           {
             "type": "image_url",
@@ -80,7 +80,7 @@ async function run() {
 
 
   // 筛选出所有已经ready并且还没有title的图
-  let query = { status: { $gte: 7000 }, $or: [{ title: { $exists: false } }, { title: null }] };
+  let query = { status: { $gte: 7000 }, $or: [{ copy: { $exists: false } }, { copy: null }] };
   let docs = await models.Art.find(query).sort({ publishTime: 'desc' });
 
   let total = docs.length;
@@ -99,12 +99,15 @@ async function run() {
       console.log(metaInfo);
       let metaInfoJson = JSON.parse(metaInfo);
       let titleJson = metaInfoJson.title;
-      let descJson = metaInfoJson.copy;
+      let descJson = metaInfoJson.description;
+      let copyJson = metaInfoJson.copy;
       let title = JSON.stringify(titleJson);
       let desc = JSON.stringify(descJson);
+      let copy = JSON.stringify(copyJson);
 
       doc.title = title;
       doc.desc = desc;
+      doc.copy = copy;
       await doc.save();
 
     } catch (e) {

+ 6 - 10
views/common-meta.ejs

@@ -1,11 +1,7 @@
 <meta charset="UTF-8">
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  <link rel="icon" href="/assets/icon/favicon.ico" type="image/x-icon">
-  <title><%= title %></title>
-  <meta name="description" content="<%= description %>">
-  <meta property="og:title" content="<%= title %>">
-  <meta property="og:site_name" content="Art Number Coloring Page">
-  <meta property="og:image" content="https://www.art.pcoloring.com/assets/svg/logo.svg">
-  <meta property="og:description" content="<%= description %>">
-  <meta property="og:type" content="website">
-  <meta property="og:url" content="https://www.art.pcoloring.com/">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+<link rel="icon" href="/assets/icon/favicon.ico" type="image/x-icon">
+<title>
+  <%= title %>
+</title>
+<meta name="description" content="<%= description %>">

Неке датотеке нису приказане због велике количине промена