如何用人工智能高效选研究题目?

保持探索精神,学用合适的工具,高效解决问题吧。

痛苦

对你来说,读文献,特别是读自己感兴趣的文献,可能是件非常令人愉悦而激动的事儿。

例如海华,他读博的时候我到 UNT 访学,跟他在一个实验室。他时常一边读最新的顶会论文,一边击节赞叹。读到开心之处,他会高声喊出来,还兴奋地把我拉过去一起看。我觉得他是把信息检索读出了《冰与火之歌》的意境。

但是论及阅读海量文献,试图从中找寻自己的研究选题,可能就没有那么轻松愉悦了。原因大家都清楚 —— 论文太多了,而且产生速度极快。即便是水平顶尖的学者,也不敢夸下海口,说自己读过领域内全部重要文献。因为就在你说话这几分钟里,可能又有(不止一篇)新的论文发表了,里面兴许就包括重要的新观点和新发现。

这于是就构成了个显著的矛盾:

余生也有涯,而论文无涯。以有涯逐无涯,game over .

可是,不充分全面了解领域的发展,你又怎么寻找和验证自己的选题呢?你兴冲冲地给别人展示自己的新发明,一种有效降低界面摩擦提升运输效率的装置。然后别人一脸狐疑:

这玩意儿,不是叫做轮子吗?

对于科研新手来说,通过研读论文来找寻选题,还担负着必要科研训练的目的。新手在选择「读哪些论文」这个问题上,没有经验,整体过程可能要经历更多挫折和弯路。

有的学生不愿意自己耗费无用功,会干脆把这个问题推给导师。

老师老师,您给我布置一个论文阅读列表吧。

如果导师对你的研究方向熟悉,这事儿还好说。可如果不巧你的研究方向是导师尝试进入的新领域,那么这件事儿上他能提供的帮助很有限。这么多的新论文,他也没有都读过来,又怎么去分辨其中哪些论文更有价值呢?

最终,还是得你自己去一片迷雾中不断探索。这中间,你可能会遗漏很多重要成果,甚至干脆走错了方向。

好在,你可以充分利用工具。

古人航海可以用指南针,今天你开车有导航。同样,在科研的世界里漫游,你也可以借助一些更为有效的工具,减少大量的无用功耗费。

工具

我给你推荐的这款人工智能科研辅助工具,叫做 Elicit 。链接在这里。

2021 年 10 月 20 日,我刚发现了它时,就给你做了一则视频。

我在视频里,归纳了当时 Elicit 提供了几类主要功能,包括:

  • 文献推荐。给定选题后,推荐文献的同时,还给出论断(claim);
  • 头脑风暴。你给出一个话题,人工智能头脑风暴后,给你一个可能的选题列表;
  • 专家推荐。给出一两个领域内作者的名字,人工智能反馈给你领域内权威专家列表。

这些功能的演示,你可以参考视频内容。此处不赘述。

令人兴奋的地方,在于 Elicit 的愿景,是为科研人员提供直接准确的查询结果。Elicit 对 Semantic Scholar 等开放文献库进行分析,通过文献计量、信息抽取、自然语言理解、自动摘要等方法技术,掌握文献深度特征和关联,便于你进行细致查询。

由于 Elicit 利用大语言模型 GPT-3 作为驱动引擎,你不需要了解高级检索式,就能通过自然语言的对话形式,让 Elicit 理解你要找什么。这无疑给图情领域之外的研究人员大大减轻了培训负担。

(图片来源:t.ly/pxfS)

你可能会担心 Semantic Scholar 这样的文献数据库不够全面。不过前些日子,在我院举办的「数据分析与信息服务发展国际会议」上,我请教过 Kevin Boyack 教授。按照他的说法,Semantic Scholar 可以算作是 "a global model" ,规模是足堪重任的。

我去年那个视频发布以后,Elicit 又不断进化。今年的 2 月底,我还专门做了一次直播,以 "How can a video be popular" 这个问题作为样例,演示了 Elicit 的一些新功能。

你可以 点击这个链接,查看当时的直播回放。

今年 5 月份,我又在星球里分享了 如何用 Elicit 做科技咨询。

很多读者看过后,反馈热烈。

我发现自己介绍和演示的速度,着实赶不上 Elicit 进化。作为一款(至少目前)免费的工具,Elicit 背后的开发团队真的是很拼。

不过我也了解到,很多研究新手因为不了解这款工具的基础功能,浅尝辄止,这非常可惜。

因此我为你写下这篇文章。咱们尝试用简短的篇幅,聚焦在一个问题上 —— 如何用 Elicit 帮助你找寻研究选题。

例子

我们打开 Elicit ,先来输入一个问题:

any recent interesting applications with GPT3?(近期 GPT3 有没有什么有趣应用?)

输入之后,点击查询按钮,Elicit 很快就给出了结构化的结果。

你粗粗浏览,就会发现这里结果中有些 "GPT" ,并非我们想要的。因为人工智能领域的 GPT (Generative Pre-trained Transformer) 的出现,是近年的事儿。而这里有些结果论文,发表在 1997 年,研究的是另一个 GPT (General Particle Tracer)。

检索结果里其他主题乱入,怎么办呢?

对于其他更为棘手的情况,我们可能需要使用全称检索等方法来区分。但是在咱们的例子中,简单粗暴的方法,就是用年代筛选。

通过查询可知,GPT-3 出现的时间,在 2020 年 7 月。

所以,你可以使用右侧的 Filter ,把发表时间设定为 2020 之后。

再看看左侧显示结果的内容,已经发生了显著的变化。这次过滤出来的内容,基本上都和我们的问题相关了。

可是我们并不清楚,这些文章的重要性。衡量文章重要性有很多指标,你可以参考 我在这篇文章里面的介绍。

不过,为了简化问题,此处咱们让 Elicit 仅依据引用数量进行一个简单的排序。

排序之后,就变成了这个样子:

你可以通过文章的标题和摘要,了解这些论文的研究目标和简单概述。其中有些文章直接可以打开 PDF 文件(蓝色链接),查看具体的研究内容。

有些检索结果条目没有 PDF 直接提供,也不要紧。万不得已,你还可以通过 Semantic Scholar 平台直接找作者申请全文等方式来获取。「只要思想不滑坡,方法总比困难多」嘛。

阅读 PDF 的时候,不妨采用 我之前跟你提到的方法,主动从阅读文献里寻找反馈,从而改进自己对于某一领域方法和范式的了解。

你还可以在 Elicit 给出的列表中,加入一系列的元素(列)。例如说作者、来源期刊、资助和 DOI 等信息。

不过若只是展现这些元数据内容,对 Elicit 来说就是大材小用了。你可以让 Elicit 展现智能分析的结果,例如文章的类别、研究方法等。对于实验类的文章,甚至还可以把样本数量、样本具体细节、年龄、区域等信息,都一一抽取出来。

这些资料展示,体现了 Elicit 「细粒度」和「理解自然语言」的特点。它不再满足于提供「书皮功夫」,而是帮助你一追到底,利用 GPT-3 的强大功能,完成信息抽取和梳理。

你可以根据自己的需要,一一尝试这些功能。如果你对有些功能的使用场景和利用方法不了解,可以参考 Ought (Elicit 出品公司)提供的一系列简短教学视频。视频都不长,我之前详细看过几段,觉得很有收获。

下面说说我最喜欢的功能吧——让 Elicit 利用 GPT-3 提供的语言理解功能,尝试直接回答你提出的研究问题

问答

还记得咱们的问题是啥吗?

any recent interesting applications with GPT3?

这个问题,其实不需要你通过一一浏览文献来达成。因为你可以让 Elicit 加上这一项:

很快你就能看到,对咱们的问题,Elicit 给出了这样的总结。

怎么样?厉害吧?通过自然语言的理解与总结,你提出问题,Elicit 直接给了答案。

不过我需要提醒你,不要对 Elicit 直接给出的回答有过高的预期。有人戏谑现在的人工智能水平,也就是「人工智障」。这话说得难听,但其实有一定道理,毕竟人工智能研究距离「强人工智能」的目标,还有很长的距离。这些自动生成的答案,很可能不够精确,甚至包含了错误。但无论如何,它为你继续深入研究,给出了一个不错基础和起点。

有的同学这时候一定不耐烦了:

老师你说这么多有啥用?我就想找个好题目开题啊!找出那么多相关研究,知道了某项技术有哪些应用,对我有什么好处?!我又不能把别人做过的东西再做一遍。

首先,别人的研究,对你有参考价值,特别有助于帮你判定很多研究方向的必要性。

其次,咱们不要这么急功近利。别人花几个月时间老老实实做文献综述,你希望靠着 Elicit 几秒钟搞定,这现实吗?

嗯,不好说。

我在《如何选研究题目?》一文给你讲过,他人的「研究局限」,可能是你继续研究的一个起点。当然,你需要注意别掉进别人挖的坑。

Elicit 的厉害之处,在于可以「博览群文」之后,快速把这些局限给你列出来。比起你一篇篇翻找核对,效率要高出许多。

我们这就加入「研究局限」这一列。

注意此次出来的这一列结果,可能并不周全。

有的行,干脆没有内容。这怎么回事儿?

哪篇论文后面没有局限性描述?这东西你都抽不出来,还好意思自称智能?看来 Elicit 真的「人工智障」啊。

你先别急着下结论。你仔细看看「局限」的内容都是什么。可以看到,这些并不完全等同于论文结尾的局限描述,而是实实在在探讨 GPT-3 技术的局限性。这和你提出的问题「高度相关」。那些给出的答案,因为这种高度相关性,可能蕴藏着深入挖掘的价值

针对别人提出的局限,你若能发挥自己的优势,结合独特视角,给出有价值的新解答,那么胜利就在向你招手。但是且慢,还记得我之前给你提到过研究局限的坑吗?例如这些局限,倘若只是作者给自己后续系列文章做的铺垫,怎么办?

其实答案依然在 Elicit 。我们可以把 Elicit 发现的局限,转换成为新的问题,让 Elicit 在海量的研究文库里面,帮咱们寻找别人的研究成果,以便确定它们是不是有价值的真问题,或者是不是已经被人捷足先登。这样,你可以少走很多弯路。

举一反三,试试看吧。

小结

回顾一下本例中咱们使用 Elicit 的流程。

我们首先提出一个不够具体,或者不够有信心的问题。通过 Elicit 给出的结果做出筛选,增加元素,从而不断迭代自己的问题,调整研究的角度,最终找到一个既能满足自己求知欲,又对别人足够有价值的「研究生态位」。

注意刚开始的时候,不要设定一蹴而就找到合适选题的过高期待。因为那样你更容易体验挫折感。如果你很快定位出来了高价值研究问题,恭喜你,运气真棒!如果中间经历波折,也不要紧。这些不断尝试的过程,也在给你积累本领域研究主题和研究成果的认知,Elicit 其实已经在帮助你快速获得清晰完整的研究地图。

篇幅所限,Elicit 的其他好用的功能,本文未一一涉及。鉴于 Elicit 更新频繁,等你读到这篇文章的时候,可能新的好用功能又出来了。保持探索精神,学用合适的工具,高效解决问题吧。

研读科研文献时,你有什么更好用的方法和技巧吗?有没有更推荐的好工具?欢迎留言,分享你的心得,我们一起交流讨论。

  • 如何免费系统化入门数据科学?
  • OpenAI 人工智能绘图工具 DALLE 好用吗?
  • 导师究竟有啥用?
  • 如何与导师有效沟通你的论文选题?
  • 如何用卡片法写论文?

题图:OpenAI DALLE 2 绘制。prompts: a scientist facing towards the gate of a giant maze

本文转载于网络 如有侵权请联系删除

相关文章

  • 通过CLOVER 引导Windows与Linux双系统

    大家好,又见面了,我是你们的朋友全栈君。通过CLOVER引导Windows与Linux双系统什么是CLOVER为什么是CLOVER引导?正式操作1、准备工具2、配置CLOVER文件搜索GUI关键字,Entries区域为引导文件的相关信息搜索关键词:Boot搜索关键词:Scan,配置扫描哪些引导文件,顺便把主题一起设置了3、放置引导文件到引导盘4、使用BOOTICE配置计算机的启动序列5、正常应该是OK的了,如果不放心或者不成功的话,可以到BIOS设置启动项,将刚才新增的启动项作为FirstBoot。最终作品什么是CLOVER可能有些朋友对CLOVER还不了解,因为有很多大神已经做过介绍,我这就做个引用吧。 黑苹果引导工具Clover配置详解(转自[三个表哥])为什么是CLOVER引导?自从折腾过黑苹果后,深深被四叶草的个性化界面以及灵活设置给吸引了。 然而并不是长期会有使用黑苹果的需求,以及公司的电脑只用Win10+Ubuntu双系统,虽然是正常使用,但,界面不好看呀!! 生命不在于折腾,于是就有了将Clover作为引导两者的想法。正式操作1、准备工具磁盘管理工具:Diskgenius

  • 线上疑难定位:trying to use a recycled bitmap

    一直有各种事情,很久没更新了,趁春节空档继续更新,分享一个线上疑难问题的排查过程在某个版本上线后,这个异常的量突然变大了,log如下通过log,可以知道是imageview使用了被回收的bitmap导致的,可以具体看下崩溃地方的源码android.graphics.BaseRecordingCanvas$drawBitmapframeworks/base/graphics/java/android/graphics/BaseCanvas$throwIfCannotDraw崩溃的原因,是很清晰的,就是使用的bitmap被回收了,由于log只有系统层级的log,没有项目的log,那该如何进一步定位呢?可以分成三个步骤1、定位发生错误的activity崩溃是发生在draw方法内部,draw方法一般都是在当前Activity可见的时候触发,就是onResume跟onPause的生命周期中,我们可以在崩溃后台,标记最新可见的activity,当发生崩溃时候,把当前可见的activity一起上报,可以通过后台查看,崩溃那一刻,在前台的是哪个activity可以连续查看几条,看下是否都是同个acti

  • 在博客园平台为博客自动化添加目录

    效果预览以下示例效果文章的源地址是这篇博客,在完成配置后,在markdown里面的一级标题二级标题等都会在这里的目录中显示,这里仅提供了文章开头目录以及每一个标题中回到顶部的功能,如果需要悬浮窗的目录显示,需要参考其他文章,如这篇博客介绍了小型悬浮窗的效果,但是只能用于二级标题和三级标题的文章。本文的配置方法使用了参考链接1中所给出的方法,效果如下图所示: 操作方案在设置-页脚HTML代码中添加如下代码:<scriptlanguage="javascript"type="text/javascript"> //生成目录索引列表 //ref:http://www.cnblogs.com/wangqiguo/p/4355032.html //modifiedby:zzq functionGenerateContentList() { varmainContent=$('#cnblogs_post_body'); varh1_list=$('#cnblogs_post_bodyh1');//如果你的章

  • Kimsuky APT组织使用新型的AppleSeed Android组件伪装成安全软件对韩特定目标进行攻击

    KimsukyAPT组织使用新型的AppleSeedAndroid组件伪装成安全软件对韩特定目标进行攻击本文一共2922字,36张图预计阅读时间13分钟复制封面源自blog.alyac.co.kr/3536一.前言:kimsukyAPT组织(又名MysteryBaby,BabyCoin,SmokeScreen,BabyShark,CobraVenom),该组织一直针对于韩国的智囊团,政府组织,新闻组织,大学教授等等进行活动.并且该组织拥有windows平台的攻击能力,载荷便捷,阶段繁多。并且该组织十分活跃.其载荷有带有漏洞的hwp文件,携带恶意宏文档,释放dll载荷的PE文件,远程模板注入技术docx文档,恶意的wsf以及js的脚本文件等近日,Gcow安全团队追影小组在日常的文件监控中发现该组织正在积极的使用分阶段的恶意宏文档,恶意的wsf以及js文件释放并加载载荷同时释放并打开相关的诱饵文档以迷惑受害者以及部分模板注入技术的相关样本。同时我们也发现了其使用冒充KISA(KoreaInternet&SecurityAgency)的官方安卓端安全检查软件针对特定目标进行钓鱼的活动

  • Android模拟面试,解锁大厂——从Activity创建到View呈现中间发生了什么?

    每天一个面试知识点,文章持续更新,Android模拟面试,解锁大厂一对一面试体验。前言前段时间公司招人,作为面试官,我经常让面试者简述View的绘制流程。他们基本都能讲明白View的测量(measure)、布局(layout)、绘制(draw)等过程。还有少数人会提到DecorView和ViewRootImp的作用。但是,当我继续追问关于Window的内容时,几乎没有人回答上来。而本章将会带你深入理解Window、DecorView、ViewRootImp。除此之外,你还能在本章找到以下问题的答案:1.为什么要有设计Window? 2.子线程真的不能更新UI吗? 3.为什么在Activity的onCreate方法中无法获取View的宽和高?图解Activity启动到View显现过程上图出现了五个对象:Activity、Window、WindowManager、DecorView、ViewRootImpl,我分别解释一下它们的作用。Activity:Activity像是一个指挥官,它不处理具体的事务,只在适当的时候指挥Window/WindowManager工作。例如:在attach时创

  • 10分钟带你了解项目经理和产品经理

    在公司的组织结构中会有这么两个职位:项目经理(ProjectManager)和产品经理(ProductManager),简称PM。项目经理是比较宽泛的用词,只要一个事项可以作为项目运作的管理者就可以称为项目经理,如:建筑项目经理、金融项目经理、制造业项目经理、研发经理等。产品经理,这个词在互联网公司或是新兴创业公司用的比较多,也是最近被广泛应用于组织架构中用词。 是不是大家都只是知道有这么个职位存在,具体他们的定位是什么,职责要求是什么,所需的能力是什么。 有时候需要这两个岗位进行交互有如何做到才是最优组合?以及一个事项交给你,你是把它作为产品运作还是作为项目运作,如何区分和衡量?那就让我们简单分析下吧:一、项目经理和产品经理的定位1.什么是项目经理? 想知道什么是项目经理,需要搞明白什么是项目?什么是项目管理?什么是项目经理?(1).什么是项目? 项目是为创造独特的产品、服务或成果而进行的临时性工作。 项目的基本特征:临时性,有确定的开始时间和结束时间;独特性,提供独特的产品、服务或成果;渐进性,渐进明细逐步完善的过程,意味着分步、连续的积累。(2).什么是项目管理? 项目管理就是将

  • 科学提升认知方法之贝叶斯公式

    戳蓝字“架构之美”关注我们哦!贝叶斯全名为托马斯·贝叶斯(ThomasBayes,1702-1761),18世纪英国神学家、数学家、数理统计学家和哲学家,概率论理论创始人,贝叶斯统计的创立者,“归纳地”运用数学概率,“从特殊推论一般、从样本推论全体”的第一人。前言一群赌徒为了赢钱,琢磨出概率;一个神学家,为了弄清上帝会不会掷骰子,发明了从结果推导原因的统计学公式。这个世界是梦想和利益驱动的,贝叶斯公式将从统计学角度为我们打开一扇大大的门。通过《女朋友生气是随机事件》我们探讨了一些有趣的概率知识,本篇文章将从贝叶斯公式出发,探究贝叶斯到底是啥,以及其在认知层面的巨大作用。不过据说每出现1个公式,文章阅读将下降1/3。华为大佬说:人工智能就是统计学。在我眼中,贝叶斯公式就是统计学走向机器学习的起点。贝叶斯公式贝叶斯定理(Bayes’sRule):如果有k个相互独立事件A1,A2···,Ak并且,P(A1)+P(A2)+...+p(Ak)=1和一个可以观测到的事件B,那么有:这个就是贝叶斯公式,相当简洁。 公式中有几个关键概念: P(A)为先验概率,即在观察事件B之前得到的事件A的假设概率

  • JS示例17-如何取非行间样式

    一、知识要点1、函数的返回参数 2、函数的封装 3、如何解决取非行间样式兼容性问题二、源码参考<!DOCTYPEHTML> <html> <head> <metacharset="utf-8"> <title>无标题文档</title> <style> #div1{ width:200px; height:200px; background:red; } </style> <script> functiongetStyle(obj,name){ if(obj.currentStyle){ returnobj.currentStyle[name]; }else{ returngetComputedStyle(obj,false)[name]; } } window.onload=function(){ varoDiv=document.getElementById('div1'); alert(getStyle(oDiv,'ba

  • ipfs的基本操作

    1添加一个文件到ipfs基本命令:添加文件:ipfsadd<filename>查看文件:ipfscat<哈希值>下载文件:ipfsget<哈希值>同步:ipfsdaemon具体操作: 先添加一张图片:$ipfsadd./tree.jpeg addedQmcPuRfoF5Joa4d9fxLP6CnrwBFgNCUFSorV438B8VqR7Gtree.jpeg 10.63KiB/10.63KiB[===========================================================================================]100.00%复制同步:$ipfsdaemon Initializingdaemon... Successfullyraisedfiledescriptorlimitto2048. Swarmlisteningon/ip4/127.0.0.1/tcp/4001 Swarmlisteningon/ip4/172.16.166.1/tcp/4001 Swarmlisteningon/

  • python ssh连接_pycharm显示no module named

    大家好,又见面了,我是你们的朋友全栈君。 文章目录报错问题分析解决方案1.把id_rsa转换成PuTTY2.id_rsa转换成RSA参考报错在Pycharm中用密钥登录的时候会报错[1/4/202110:54AM]Uploadtogpu11-188failed:keypair‘C:\Users\xx.ssh\id_rsa’iscorruptorhasunknownformat. OnlySSH2keysinOpenSSHformat(DSA,RSAorECDSA)orPuTTYPrivateKey*.ppkkeysaresupported. Errormessage:invalidprivatekey:[B@7b3e701a 这是id_rsa格式不对造成的问题分析我记得之前是用RSA的加密方式生成了密钥,但是打开自己使用的密钥文件才的发现,-----BEGINOPENSSHPRIVATEKEY-----复制是openSSH方式的密钥。之前RSA方式的密钥文件的开头是-----BEGINRSAPRIVATEKEY-----复制原来问题出在,使用命令ssh-keygen-trsa生成ssh

  • 内核态和用户态的区别

    http://blog.csdn.net/fatsandwich/article/details/2131707# http://jakielong.iteye.com/blog/771663 当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。此时处理器处于特权级最高的(0级)内核代码中执行。当进程处于内核态时,执行的内核代码会使用当前进程的内核栈。每个进程都有自己的内核栈。当进程在执行用户自己的代码时,则称其处于用户运行态(用户态)。即此时处理器在特权级最低的(3级)用户代码中运行。当正在执行用户程序而突然被中断程序中断时,此时用户程序也可以象征性地称为处于进程的内核态。因为中断处理程序将使用当前进程的内核栈。这与处于内核态的进程的状态有些类似。 内核态与用户态是操作系统的两种运行级别,跟intelcpu没有必然的联系,intelcpu提供Ring0-Ring3三种级别的运行模式,Ring0级别最高,Ring3最低。Linux使用了Ring3级别运行用户态,Ring0作为内核态,没有使用Ring1和Ring2。Ring3状态

  • C#比较两文件内容是否完全一样

    C#比较两文件内容是否完全一样 ————————————————原文链接:https://blog.csdn.net/csdn_zhangchunfeng/article/details/81093196 一.逐一比较字节数 privateboolCompareFile(stringfirstFile,stringsecondFile){if(!File.Exists(firstFile)||!File.Exists(secondFile)){returnfalse;}if(firstFile==secondFile){returntrue;}intfirstFileByte=0;intsecondFileByte=0;FileStreamsecondFileStream=newFileStream(secondFile,FileMode.Open);FileStreamfirstFileStream=newFileStream(firstFile,FileMode.Open);if(firstFileStream.Length!=secondFileStream.Length){fi

  • 获取截止日期,包括对节假日、补班、双休的处理

    话说月光族的小明申请办了一张信用卡,银行规定,在受理成功后10个工作日(假设正常双休不上班)之后将可领取信用卡。tags:小明的本次办卡业务将在那天完成? 分析需求:根据受理日期,由10个工作日这个限制条件,计算出截止日期即可,其中需要对正常双休,国家法定节假日,补班等情况进行处理。 解决方案:     1、创建表存放国家法定节假日和补班的日期数据。(国家每年都会发布新的假期数据)。     2、根据开始时间和有效工作日2个输入条件,输出截止日期。   代码段: 1    ///<summary> 2///根据开始时间和有效工作日,计算得出截止日期,包括对节假日、补班、双休的处理 3///</summary> 4///<paramname="dt">办理日期</param> 5///<paramname="workDay">多少工作日</param> 6///<returns></returns> 7publicDateTimeCalculateEndDate(DateTimed

  • httpcomponents 手动指定的Content-Type,丢失boundary,导致服务器无法获取上传文件

    httpcomponents做文件上传,提供的接口文档中请求头包含了Content-Type的请求头,因此手动指定了请求头, 联调时发现对方无法接受到上传文件,百思不得其解,也耗费了很多时间。 原来是手动指定Content-Type:multipart/form-data导致丢失了boundary,boundary是服务端解析的默认分割符,导致服务端接受文件失败。 详细说明见大佬博客:https://blog.csdn.net/u011090495/article/details/18704015  

  • svn 提交 commit慢

    又修改了一下,上一个方法有问题    #!/bin/bash  ###ubuntu下注意要用bash哦,不然for循环总提示'badloop....' exportLC_CTYPE=en_US.UTF-8#语言支持复制  SVN_PATH=/usr/bin/svn   TEMP_FILE=/var/svn.log  changed=$(svnlookchanged-r$REV$REPOS)   RMF=`rm-f$TEMP_FILE` echo"$changed">>$TEMP_FILE num=`wc-l$TEMP_FILE|awk'{print$1}'` for((b=1;b<=$num;b++));do LINE_FILE=`awk"NR==$b"$TEMP_FILE|awk'{print$2}'` $SVN_PATHupdate/var/www/$LINE_FILE--usernamesvn_user--password123456--no-auth-cache##

  • 不再犹豫

       读过多少书,就敢说这个世道‘就是这样的’,见过多少人,就敢说男人女人‘都是这般德行’?你亲眼见过多少太平和苦难,就敢断言他人的善恶?                                         ——猫腻《剑来》      不知为何,最近突然特别颓废,对这个世界很失望。周遭都是庸庸碌碌,工作上的繁琐推诿,自己的碌碌无为,经常思考起人生的意义?苦思彷徨而不得。值夜班看电影熬夜了,之后还接连几天看小说《剑来》到深夜两点多,明明知道不对,却不愿收手放下手机。    可是,对比书

  • HFUT 1356.转啊转(安徽省2016“京胜杯”程序设计大赛 E)

    转啊转 TimeLimit:1000MS MemoryLimit:65536KB TotalSubmissions:25 Accepted:8 Description     在二维平面上,有一个固定的圆和一个固定的点(保证该点不在圆上),还有一个动点在圆上以角速度w绕圆心一直转。在t时刻,连接该动点与定点成一条直线k,求直线k被圆所截线段的长度(即直线k在圆内部分长度)。          动点初始时刻在圆的三点钟方向(即与x轴正方向平行),并以逆时针方向绕圆转。​    Input        先输入一个整数T,表示T(T<50)组数据。 每组数据一行七个实数a,b,r(r>0),x,y,w(w>=0),t(t>=0) 分别表示圆的圆心坐标(a,b),半径r,固定点坐标(x,y),角速

  • css3动画参数解释

    @keyframes规定动画。animation所有动画属性的简写属性,除了animation-play-state属性。 ------------------------------------------------------------------------------------animation-name  规定@keyframes动画的名称。 --animation-duration  规定动画完成一个周期所花费的秒或毫秒。默认是0。 --animation-timing-function  规定动画的速度曲线。默认是"ease"。 linear   动画从头到尾的速度是相同的。   ease   默认。动画以低速开始,然后加快,在结束前变慢。   ease-in   动画以低速开始。   ease-out   动画以低速结束。   

  • 德语语法:德语的冠词

    为了加深德语学习的印象,将结合英语的语法进行对比学习。   冠词通常分不定冠词和定冠词。 一,德语的不定冠词 1)英语中的不定冠词 英语的不定冠词有an/a,a修饰辅音,例如:aman;an修饰元音,例如:anapple。不定冠词一般表示一个或者某一个。 2)德语中的不定冠词 德语的不定冠词有ein/eine,也指一个或者某一个,但要很具词性来决定使用ein还是eine,ein用来修饰中性和阳性名词,eine用来修饰阴性名词。   ein(修饰中性/阳性名词):einMann(阳性名词)一个男人                einKind(中性名词) 一个孩子   eine(修饰阴性名词):   eineFrau(阴性名词)一个女子 英德对比示例: aman,achild,alady<=>einMann,einKind,eineFrau

  • 2017.3.12 H5学习的第一周

    本周我开始了H5的学习,在这一周里我们从html的基本标签开始一直讲到了才算css的用法,接下来我将记录下来本周我学到的H5的内容。 首先是声明文档,声明文档类型是HTML5文件,它在HTML文档必不可少且必须放在文档第一行。 写法:<!DOCTYPEhtml>。 接着我们学习了html的基本结构: <!DOCTYPEhtml>  <html>     <head>       <metacharset="UTF-8">       <title></title>     </head>     <body>     </body></html> 之后,我们又了解了head中的一些标签,包括meta标签和link标签,以下是它们的详细内容: 【meta】标签 1.charest属性:单独使用,设置文档字符集编码格式 写法:<metacharest="UTF-8"> 常见的中文编码格式: GB-2312:国标码,简体中文。

  • 【python pip】一招解决pip下载过慢问题

    概述 在我们经常使用pip安装插件模块的时候,有没有发现下载速度很慢,但有些有强迫症的人面对几k几十k每秒的速度绝对忍不了,是不是,那么,方法来了。 @目录概述壹:问题描述贰:解决过程一、问题分析二、问题解决方法一:下载时加入参数-i[镜像源地址]方法二:设置源三、国内镜像源地址叁:作者有话作者 壹:问题描述 一句话就是使用pip下载过慢,想要快起来,起来,来。 贰:解决过程 一、问题分析 pip下载速度过慢的原因就是pip默认使用的是国外的镜像源,那么,我使用国内的镜像源,问题不就解决了。 二、问题解决 有两种方法,方法一临时有效,方法二永久生效。 方法一:下载时加入参数-i[镜像源地址] pipinstall-ihttps://pypi.tuna.tsinghua.edu.cn/simplejieba 或者 pipinstalljieba-ihttps://pypi.tuna.tsinghua.edu.cn/simple 复制 方法二:设置源 使用方法一,需要每次在下载时都要带参数,不想麻烦的试试方法二吧。 pipconfigsetglobal.index-urlhttps://p

相关推荐

推荐阅读