推送公众号接口调整
This commit is contained in:
@@ -32,7 +32,7 @@ class Aiarticle extends Base
|
||||
/**OPENAI相关配置----------end**/
|
||||
|
||||
//数据表必填字段[ai_article]
|
||||
protected $aAiFileds = ['article_id','title_english','title_chinese','journal_issn','covered','digest','research_result','content','highlights','discussion','prospect','research_background',];
|
||||
protected $aAiFileds = ['article_id','title_english','title_chinese','journal_issn','covered','digest','research_result','content','highlights','discussion','prospect','research_background','discussion_results','research_method'];
|
||||
|
||||
//期刊接口地址
|
||||
protected $sJournalUrl = 'http://journalapi.tmrjournals.com/public/index.php';//'http://zmzm.journal.dev.com'; // 'http://zmzm.journal.dev.com'; // 'http://journalapi.tmrjournals.com/public/index.php';//'http://zmzm.journal.dev.com'; //
|
||||
@@ -41,31 +41,19 @@ class Aiarticle extends Base
|
||||
//投稿系统
|
||||
protected $sSubmissionUrl = 'https://submission.tmrjournals.com/';
|
||||
protected $aOpenAiAsk = [
|
||||
1 => '"将以下内容翻译为中文,仅返回翻译结果,不要解释:\n {#content#}"',
|
||||
1 => '"将以下内容翻译为中文,仅返回翻译结果,不要解释:\n {#content#}"',
|
||||
2 => '
|
||||
**核心要求**
|
||||
1️ 内容涵盖哪些学科及方法请罗列
|
||||
2 结构化摘要生成【四要素模版】
|
||||
3 研究背景提炼【三段式结构】
|
||||
发病率+当前治疗缺口(如5年OS<20%)
|
||||
引用2-3篇高被引论文的矛盾结论(如Nature vs Cell观点分歧)
|
||||
基于团队前期工作(如预实验发现X调控Y)
|
||||
4 针对稿件内容进行结论撰写
|
||||
与TOP3高被引文献的对比(用"与A研究的X结论不同..."句式) 机制解释的3级证据链(如:基因敲除→通路抑制→表型逆转) 临床转化的可行性路径(如:基于RECIST标准的ORR提升)研究局限性(分方法学/样本量/随访维度)
|
||||
5 针对稿件内容进行展望撰写
|
||||
现有方法的可扩展性(如空间组学升级计划)
|
||||
6 按点总结归纳研究结果并做简要阐述【3点以上】
|
||||
2 学术规范翻译并提炼摘要,更强调逻辑性、科学术语准确性和表达的严谨性,并且不需要分点展示,字数小于200字,以便更方便读者阅读
|
||||
3 研究背景提炼,大于500字
|
||||
4 针对文章简单总结讨论和结果, 大于450字
|
||||
5 简单总结文章的研究方法, 大于300字
|
||||
6 针对稿件内容进行展望撰写
|
||||
7 总结归纳亮点【3点以上】
|
||||
8 禁用清单
|
||||
直接复制讨论部分的原文
|
||||
未达到统计学显著性的趋势描述
|
||||
稿件内未提及的内容一定不要总结归纳出来
|
||||
"可能""或许"等不确定性词汇
|
||||
单纯古籍原文翻译(需结合现代数据解读)
|
||||
未经验证的因果断言(如"证明XX药治愈癌症")
|
||||
9 请将标题翻译成中文
|
||||
8 你是一名资深医学翻译专家,请将标题翻译成中文【内容需自然流畅、口语化、连贯性、学术性】
|
||||
{#title_chinese#}
|
||||
10 请将稿件内容翻译成中文
|
||||
9.你是一名资深医学翻译专家,请将文章内容翻译成中文【内容需自然流畅、口语化、连贯性、学术性】
|
||||
{#content#}
|
||||
**稿件关键信息**
|
||||
- 稿件简介:{#abstract#}
|
||||
@@ -73,7 +61,7 @@ class Aiarticle extends Base
|
||||
**输出格式**
|
||||
中文格式[英文简写忽略首字母大写]
|
||||
格式内容
|
||||
```json{ "title_chinese": "", "content": "", "covered": "【总字数<=100】", "digest": "【总字数<=500】", "research_background": "", "research_result": "", "highlights": "", "prospect": "", "discussion": ""}'
|
||||
```json{"covered": "【总字数<=100】", "digest": "【总字数<=500】", "research_background": "【总字数>200】", "discussion_results": "【总字数>450】","research_method" => "【总字数>300】", "prospect": "", "highlights": "", "title_chinese": "", "content": "", }'
|
||||
];
|
||||
|
||||
//文章图片icon地址
|
||||
@@ -115,7 +103,8 @@ class Aiarticle extends Base
|
||||
$data = [
|
||||
'model' => $model,
|
||||
'messages' => $messages,
|
||||
'temperature' => 0.7
|
||||
'temperature' => 0,
|
||||
'top_p' => 1,
|
||||
];
|
||||
|
||||
$oCurl = curl_init();
|
||||
@@ -168,7 +157,7 @@ class Aiarticle extends Base
|
||||
]
|
||||
];
|
||||
//请求接口
|
||||
$sModel = $aParam['api_model'] ?? 'gpt-4o';
|
||||
$sModel = empty($aParam['api_model']) ? 'gpt-4o' : $aParam['api_model'];
|
||||
$result = $this->curlOpenAI($messages,$sModel);
|
||||
if($result == FALSE){
|
||||
return json_encode(array('status' => 2,'msg' => 'Interface request failed'.$this->sError));
|
||||
@@ -1116,7 +1105,7 @@ class Aiarticle extends Base
|
||||
//数据处理-标题
|
||||
$sTitle = empty($aAiArticle['title']) ? '' : $aAiArticle['title'];
|
||||
$sTitle = mb_convert_encoding($sTitle, 'UTF-8', 'auto');
|
||||
$aAiArticle['title'] = $this->truncateByBytes($sTitle, 64);
|
||||
$aAiArticle['title'] = $this->truncateByBytes($sTitle);
|
||||
//数据处理-摘要
|
||||
$sDigest = empty($aAiArticle['digest']) ? '' : $aAiArticle['digest'];
|
||||
$sDigest = mb_convert_encoding($sDigest, 'UTF-8', 'auto');
|
||||
@@ -1165,24 +1154,12 @@ class Aiarticle extends Base
|
||||
* 字符串处理
|
||||
* @param article_id 文章ID
|
||||
*/
|
||||
private function truncateByBytes($str, $maxBytes) {
|
||||
$len = 0;
|
||||
$result = '';
|
||||
$i = 0;
|
||||
|
||||
while ($i < mb_strlen($str, 'UTF-8')) {
|
||||
$char = mb_substr($str, $i, 1, 'UTF-8');
|
||||
$charBytes = strlen($char); // UTF-8 下实际字节数
|
||||
|
||||
if ($len + $charBytes > $maxBytes) {
|
||||
break;
|
||||
}
|
||||
|
||||
$result .= $char;
|
||||
$len += $charBytes;
|
||||
$i++;
|
||||
private function truncateByBytes($str, $maxLength = 64) {
|
||||
$totalChars = mb_strlen($str, 'UTF-8');
|
||||
if($totalChars >= $maxLength){
|
||||
return mb_substr($str,0,$maxLength);
|
||||
}
|
||||
return $result;
|
||||
return $str;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1533,4 +1510,5 @@ class Aiarticle extends Base
|
||||
$oMaterial = new Material;
|
||||
return $oMaterial->uploadMaterial($aUpload);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user