我正在参加「掘金·启航计划」
前言
最近我的同事问我,chatGPT使用的体验如何?
如果你只是把它当作一个搜索引擎来使用的话,那我觉得你需要往下看看了:
坦白讲,在过去的几年里,搜索引擎一直是我获取知识、信息的主要工具。然而,随着人工智能的发展,这一情况正发生着变化。最近,我接触并使用了ChatGPT,它让我重新审视了我的信息获取方式。这款强大的工具让我意识到,我可能不再需要依赖传统的搜索引擎了......
聊天式的交互方式
与浏览器不同的是,ChatGPT能够理解我们说的话,知道我们想要什么样的东西。使用搜索引擎时,我们可能需要不断地复述、修改搜索内容,但在ChatGPT中,我们只需要稍加补充说明,便能够得到进一步精确的答案。这种聊天式的交互方式大大提高了我们获取信息的效率和准确性。
即使是一段长长的描述,它也能够理解并给出尽可能符合你想法的内容,只要你对问题的描述足够细致。
上下文的概念
ChatGPT具有上下文理解的能力。这意味着它能够理解我们之前的问题和回答,从而更好地回应我们的需求。这与搜索引擎形成鲜明对比,后者往往需要我们不断地输入关键词,直到找到满意的答案。
按照这个思路,你可以一直引导他不断地挤出 “牛奶”
筛选和精确的回答
搜索引擎给出的内容参差不齐,用户需要花费大量时间去挑选和筛选。而ChatGPT则彻底解决了这个问题。它每次只返回一个答案,这个答案通常是经过筛选和整合的,既减少了用户筛选信息的时间,也提高了信息的可靠性。
需要辨别能力
当然,ChatGPT并非完美无缺。有时它会给出一些不符合事实的答案,这就需要我们具备一定的辨别能力。但总体而言,它的性能和准确性已经让许多开发人员惊叹不已。
阅读源码
这个部分恰恰是我觉得比较牛逼的地方,当你想研究一些源代码但是常常在某个地方卡住的时候,我想你需要一个chatGPT: 这是一段vue中的relase.js的源码
async function main() {
let targetVersion = args._[0]
if (!targetVersion) {
// no explicit version, offer suggestions
const { release } = await prompt({
type: 'select',
name: 'release',
message: 'Select release type',
choices: versionIncrements.map(i => `${i} (${inc(i)})`).concat(['custom'])
})
if (release === 'custom') {
targetVersion = (await prompt({
type: 'input',
name: 'version',
message: 'Input custom version',
initial: currentVersion
})).version
} else {
targetVersion = release.match(/\((.*)\)/)[1]
}
}
if (!semver.valid(targetVersion)) {
throw new Error(`invalid target version: ${targetVersion}`)
}
const { yes } = await prompt({
type: 'confirm',
name: 'yes',
message: `Releasing v${targetVersion}. Confirm?`
})
if (!yes) {
return
}
// run tests before release
step('\nRunning tests...')
if (!skipTests && !isDryRun) {
await run(bin('jest'), ['--clearCache'])
await run('yarn', ['test', '--bail'])
} else {
console.log(`(skipped)`)
}
// update all package versions and inter-dependencies
step('\nUpdating cross dependencies...')
updateVersions(targetVersion)
// build all packages with types
step('\nBuilding all packages...')
if (!skipBuild && !isDryRun) {
await run('yarn', ['build', '--release'])
// test generated dts files
step('\nVerifying type declarations...')
await run('yarn', ['test-dts-only'])
} else {
console.log(`(skipped)`)
}
// generate changelog
await run(`yarn`, ['changelog'])
const { stdout } = await run('git', ['diff'], { stdio: 'pipe' })
if (stdout) {
step('\nCommitting changes...')
await runIfNotDry('git', ['add', '-A'])
await runIfNotDry('git', ['commit', '-m', `release: v${targetVersion}`])
} else {
console.log('No changes to commit.')
}
// publish packages
step('\nPublishing packages...')
for (const pkg of packages) {
await publishPackage(pkg, targetVersion, runIfNotDry)
}
// push to GitHub
step('\nPushing to GitHub...')
await runIfNotDry('git', ['tag', `v${targetVersion}`])
await runIfNotDry('git', ['push', 'origin', `refs/tags/v${targetVersion}`])
await runIfNotDry('git', ['push'])
if (isDryRun) {
console.log(`\nDry run finished - run git diff to see package changes.`)
}
if (skippedPackages.length) {
console.log(
chalk.yellow(
`The following packages are skipped and NOT published:\n- ${skippedPackages.join(
'\n- '
)}`
)
)
}
console.log()
}
这里给出的只是一个简单的例子,你也可以让他呈现更加详细的内容。
结论
给出一个还不错的网站:ChatGPT - Poe
以上内容可能相对空泛,事实上这些仅仅是一些使用上的心得体会,甚至于这篇文章的绝大部分,也是由
chatGPT完成。 你当然也可以利用他去完成你输出(工作周报,年终总结,述职报告...)
ChatGPT的出现让我意识到,我们可能正处在一个不再依赖传统搜索引擎的时代。这款强大的工具让我们更加高效、准确地获取信息,同时也激发了我们思考未来技术将如何影响我们的生活。作为开发人员,我们应该学会使用这样的工具,而不是担心被替代。毕竟,真正的程序员应该与时俱进,不断适应和探索新技术。