1
resposta

Mesmo seguindo algumas repostas desse tópico ainda com problema

Traceback (most recent call last): File "/mnt/c/Users/s027310876/workspace-vscode/llamaIndex_pandas_query/app.py", line 3, in from llama_index.experimental.query_engine.pandas import PandasInstructionParser File "/home/viveiros/.pyenv/versions/ChatbotLlamaIndex/lib/python3.10/site-packages/llama_index/experimental/init.py", line 5, in from llama_index.experimental.nudge.base import Nudge File "/home/viveiros/.pyenv/versions/ChatbotLlamaIndex/lib/python3.10/site-packages/llama_index/experimental/nudge/init.py", line 1, in from llama_index.experimental.nudge.base import ( File "/home/viveiros/.pyenv/versions/ChatbotLlamaIndex/lib/python3.10/site-packages/llama_index/experimental/nudge/base.py", line 6, in from llama_index.finetuning.embeddings.common import EmbeddingQAFinetuneDataset File "/home/viveiros/.pyenv/versions/ChatbotLlamaIndex/lib/python3.10/site-packages/llama_index/finetuning/init.py", line 15, in from llama_index.finetuning.mistralai.base import MistralAIFinetuneEngine File "/home/viveiros/.pyenv/versions/ChatbotLlamaIndex/lib/python3.10/site-packages/llama_index/finetuning/mistralai/init.py", line 2, in from llama_index.finetuning.mistralai.base import MistralAIFinetuneEngine File "/home/viveiros/.pyenv/versions/ChatbotLlamaIndex/lib/python3.10/site-packages/llama_index/finetuning/mistralai/base.py", line 10, in from mistralai.models import DetailedJobOut, WandbIntegration, TrainingParameters ImportError: cannot import name 'DetailedJobOut' from 'mistralai.models' (/home/viveiros/.pyenv/versions/ChatbotLlamaIndex/lib/python3.10/site-packages/mistralai/models/init.py)

1 resposta

Ei, André! Tudo bem?

Não se preocupe, vamos explorar outras abordagens. O seu erro é que há um problema ao importar o DetailedJobOut do módulo mistralai.models. Esse tipo de erro geralmente ocorre quando há uma incompatibilidade de versões ou quando o módulo não está instalado corretamente.

Uma sugestão é modificar o código mock para simular o módulo mistralai.models e garantir que DetailedJobOut esteja disponível no caminho correto. Segue o ajuste no código:

import sys
from unittest.mock import MagicMock


sys.modules['mistralai'] = MagicMock()


sys.modules['mistralai.models'] = MagicMock()


sys.modules['mistralai.models'].DetailedJobOut = MagicMock()
sys.modules['mistralai.models'].Mistral = MagicMock()


from llama_index.llms.groq import Groq
from llama_index.core import PromptTemplate
from llama_index.experimental.query_engine.pandas import PandasInstructionParser
from llama_index.core.query_pipeline import (QueryPipeline as QP, Link, InputComponent)
import gradio as gr
import pandas as pd
from fpdf import FPDF
from datetime import datetime
import os

# Restante do seu código segue normalmente...

O ajuste visa que o MagicMock permitirá que o llama_index.experimental passe pela verificação de importação sem falhar, mesmo que o módulo mistralai não esteja instalado.

Outro ponto, é atualizar as dependências no requirements.txt:

pandas==2.2.2
gradio==4.28.0
llama-index-core==0.11.20
llama-index-llms-groq==0.2.0
llama-index-experimental==0.4.0
fpdf2==2.7.7
python-dotenv==1.0.0
numpy==1.26.4

Rode o código e observe se funciona como esperado.

Espero ter ajudado e qualquer dúvida, compartilhe no fórum.

Até mais, André!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado!