Ferramenta llama-create
Utilização
Criação do projeto
npx create-llama@latest
✔ Which template would you like to use? › Chat
✔ Which framework would you like to use? › FastAPI (Python)
✔ Would you like to generate a NextJS frontend for your FastAPI (Python) backend? … No
✔ Which model would you like to use? › gpt-3.5-turbo-0125
✔ Which embedding model would you like to use? › text-embedding-3-small
✔ Which data source would you like to use? › Use an example PDF
✔ Would you like to add another data source? › No
✔ Would you like to use LlamaParse (improved parser for RAG - requires API key)? … yes
✔ Please provide your LlamaIndex Cloud API key (leave blank to skip): …
✔ Would you like to use a vector database? › PostgreSQL
Crie um banco de dados na Supabase e obtenha a string de conexão de migração
Preencha o arquivo. env
Mudança para o ambiente de conda
Mudança para o agente
Atualizar a versão da biblioteca em pyproject.toml
[tool]
[tool.poetry]
name = "app"
version = "0.1.0"
description = ""
authors = [ "Marcus Schiesser <mail@marcusschiesser.de>" ]
readme = "README.md"
[tool.poetry.dependencies]
python = "^3.11,<3.12"
fastapi = "^0.110.1"
python-dotenv = "^1.0.0"
llama-index = "0.10.28"
llama-index-core = "0.10.28"
llama-index-agent-openai = "0.2.2"
[tool.poetry.dependencies.uvicorn]
extras = [ "standard" ]
version = "^0.29.0"
[tool.poetry.dependencies.llama-index-vector-stores-postgres]
version = "^0.1.1"
[tool.poetry.dependencies.llama-index-vector-stores-pinecone]
version = "^0.1.3"
[tool.poetry.dependencies.docx2txt]
version = "^0.8"
[build-system]
requires = [ "poetry-core" ]
build-backend = "poetry.core.masonry.api"
Gerenciador de pacotes
Use o poemry, mas o poemry install sempre usa o ambiente virtual do poemry, o que é fácil de ter problemas.
Não haverá erros de instalação usando o pip.
pip install .
Geração de índice
python app/engine/generate.py
Um erro ocorre com text-embedding - 3 - large.
File "/Users/yanghaibin/anaconda3/envs/LI311-b/lib/python3.11/site-packages/pgvector/utils/__init__.py", line 35, in to_db
raise ValueError('expected %d dimensions, not %d' % (dim, len(value)))
sqlalchemy.exc.StatementError: (builtins.ValueError) expected 1536 dimensions, not 3072
As alterações de ambiente não serão atualizadas e uma nova janela de linha de comando será necessária.
Implantação para render
Compilação mantém o padrão: poetry install
Execução: Python www.example.com
Exemplo de projeto - Leia: Python-FastAPI
Código de origem Catálogo
Você precisa mudar o media _ type = "text / plain" para 'text / event-stream', mas com o Postman, há um problema.
return StreamingResponse(event_generator(), media_type="text/plain")