使用gpt进行代码审计和创建小型知识库的详细教程(手把手)
2023-3-29 23:47:8 Author: xsser的博客(查看原文) 阅读量:36 收藏

首先说结论,市场上说gpt审计代码的,都是非工业级别的代码,都是靶场!!吹逼的!!!gpt4 56 能做到还差不多,但是可以做到挖出接口,挖到参数,简单的查询之类的没问题

之前博客里发的文章都是很简单的说明了下

今天写一个比较详细的文档来讲讲如何使用gpt进行代码审计以及gpt审计的原理

其中我们会用到gpt_index(现在改名为llama_index,你自己github搜下就行)

基础的翻墙问题就不讲了,因为我觉得这个是作为一个基础的,最基本的安全工程师应该做到的事情,比如HK的IP会被openai 封禁之类的也属于基本的生活常识(HK 1997年回归的)。

首先你需要一个openai的apikey,可以使用gpt3.5模型以下的apikey,gpt4的key还没放出来,但是你可以参加官方的eval测评来获得一个key。

那么我们如何对自定义数据进行问题查询呢?

行业一般有2个方法

  • Embedding。即通过相似度的向量来查询这个问题的答案,这个适用于语言场景多点,个人感觉对结果准确性或者是逻辑性不高的

  • Fine tuning。这个是基于开源的模型进行微调,让它适应某个领域,比如代码审计之类的。这个需要自己去买个GPU服务器来自己调整,成本还是有点高的,这个准确率其实也不高哈哈哈哈哈,目前只有gpt4还不错,其他都是垃圾

我们先来说embedding

这个llama_index库的原理是用了向量进行chain起来的原理,大概过程就是先调用gpt的embedding模型对你要的数据进行embedding,它返回一个向量数据库,然后你存储好这个最大的集合的数据库,然后你再把用户的问题打成向量,用这个问题向量去大集合里查询,向量会找到一个最近的最相似的问题结果返回。但是这个有一个问题,就是在传输到gpt的时候,多次数据有一个trunk,这个trunk如果很小,会导致向量查询的结果有偏差,当然是在特定情况下,如果只是一般性对文章的总结的话没啥太大影响。

然后创建一个项目来引入llama_index


文章来源: http://mp.weixin.qq.com/s?__biz=MzA4NzA5OTYzNw==&mid=2247484294&idx=1&sn=b7539dfe053031d068cc1719d0e453c6&chksm=903fd21ca7485b0aa3f3d9297393fdeb795cf29ebbf70df49b3a9b0bb54c239565bcc99cc4eb#rd
如有侵权请联系:admin#unsafe.sh