Laravel Genie 使用教程
1. 项目目录结构及介绍
Laravel Genie 是一个基于 Laravel 开发的命令行 AI 机器人,它可以帮助理解和分析你的代码库。以下是项目的目录结构及其简要介绍:
laragenie/
├── .gitattributes
├── .gitignore
├── .github/
│ └── workflows/
├── app/
│ └── Providers/
├── resources/
│ └── images/
├── src/
├── tests/
├── workbench/
├── composer.json
├── phpunit.xml.dist
├── README.md
├── LICENSE.md
└── CHANGELOG.md
.gitattributes
:定义 Git 的一些特定行为。.gitignore
:指定 Git 忽略的文件和目录。.github/workflows/
:GitHub Actions 工作流文件,用于自动化某些任务。app/Providers/
:Laravel 服务提供者目录。resources/images/
:资源目录,存放静态图片文件。src/
:项目的主要代码目录。tests/
:测试目录,包含单元测试和功能测试。workbench/
:工作台目录,用于存放临时文件。composer.json
:Composer 配置文件,用于管理项目依赖。phpunit.xml.dist
:PHPUnit 配置文件,用于设置测试环境。README.md
:项目说明文件。LICENSE.md
:项目许可证文件。CHANGELOG.md
:项目更新日志文件。
2. 项目的启动文件介绍
Laravel Genie 的启动主要是通过命令行进行的。你需要在 Laravel 项目的根目录下运行以下命令:
php artisan laragenie
运行这个命令后,你会得到四个选项:
- Ask a question(提问)
- Index files(索引文件)
- Remove indexed files(移除索引文件)
- Something else(其他)
使用箭头键在选项间切换,并按回车键选择你想要执行的操作。
3. 项目的配置文件介绍
Laravel Genie 的配置文件位于 config/laragenie.php
。以下是配置文件的主要部分及其功能介绍:
return [
'bot' => [
'name' => 'Laragenie',
'welcome' => 'Hello, I am Laragenie, how may I assist you today?',
'instructions' => 'Write in markdown format. Try to only use factual data that can be pulled from indexed chunks.',
],
'chunks' => [
'size' => 1000,
],
'database' => [
'fetch' => true,
'save' => true,
],
'extensions' => [
'php', 'blade.php', 'js',
],
'indexes' => [
'directories' => [],
'files' => [],
'removal' => [
'strict' => true,
],
],
'openai' => [
'embedding' => [
'model' => 'text-embedding-3-small',
'max_tokens' => 5,
],
'chat' => [
'model' => 'gpt-4-turbo-preview',
'temperature' => 0.1,
],
],
'pinecone' => [
'topK' => 2,
],
];
在这个配置文件中,你可以设置机器人的名称、欢迎信息、指令,以及索引和 OpenAI 相关的配置。确保在 .env
文件中配置了 OpenAI 和 Pinecone 的 API 密钥和相关参数。