1
resposta

[Dúvida] O código não funciona.

estou no bloco de aula 5 sobre cadeias de conversação, e logo no início da aula depois de baixar as bibliotecas o professor utiliza o seguinte código.

[] Importações necessárias

import os
from langchain.chains import ConversationalRetrievalChain
from langchain.memory import ConversationBufferWindowMemory
from langchain.vectorstores import Chroma
from langchain_google_genai import GoogleGenerativeAIEmbeddings, ChatGoogleGenerativeAI
from langchain.document_loaders import TextLoader
from langchain.text_splitter import CharacterTextSplitter
from langchain.schema import Document
import google.generativeai as genai
import warnings
warnings.filterwarnings('ignore')

E eu já tentei de tudo, desinstalar e instalar novamente a biblioteca do langchain, com a versão mais atualizada, reiniciar o ambiente de execução e nada funciona. Está dando esse erro:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
kubernetes 34.1.0 requires urllib3<2.4.0,>=1.24.2, but you have urllib3 2.6.2 which is incompatible.
google-colab 1.0.0 requires requests==2.32.4, but you have requests 2.32.5 which is incompatible.
opentelemetry-exporter-gcp-logging 1.11.0a0 requires opentelemetry-sdk<1.39.0,>=1.35.0, but you have opentelemetry-sdk 1.39.1 which is incompatible.
opentelemetry-exporter-otlp-proto-http 1.37.0 requires opentelemetry-exporter-otlp-proto-common==1.37.0, but you have opentelemetry-exporter-otlp-proto-common 1.39.1 which is incompatible.
opentelemetry-exporter-otlp-proto-http 1.37.0 requires opentelemetry-proto==1.37.0, but you have opentelemetry-proto 1.39.1 which is incompatible.
opentelemetry-exporter-otlp-proto-http 1.37.0 requires opentelemetry-sdk~=1.37.0, but you have opentelemetry-sdk 1.39.1 which is incompatible.
google-adk 1.21.0 requires opentelemetry-api<=1.37.0,>=1.37.0, but you have opentelemetry-api 1.39.1 which is incompatible.
google-adk 1.21.0 requires opentelemetry-sdk<=1.37.0,>=1.37.0, but you have opentelemetry-sdk 1.39.1 which is incompatible.
gradio 5.50.0 requires pydantic<=2.12.3,>=2.0, but you have pydantic 2.12.5 which is incompatible.
Successfully installed annotated-types-0.7.0 anyio-4.12.0 certifi-2025.11.12 charset_normalizer-3.4.4 h11-0.16.0 httpcore-1.0.9 httpx-0.28.1 idna-3.11 jsonpatch-1.33 jsonpointer-3.0.0 langchain-1.2.0 langchain-core-1.2.6 langgraph-1.0.5 langgraph-checkpoint-3.0.1 langgraph-prebuilt-1.0.5 langgraph-sdk-0.3.1 langsmith-0.6.0 orjson-3.11.5 ormsgpack-1.12.1 packaging-25.0 pydantic-2.12.5 pydantic-core-2.41.5 pyyaml-6.0.3 requests-2.32.5 requests-toolbelt-1.0.0 tenacity-9.1.2 typing-extensions-4.15.0 typing-inspection-0.4.2 urllib3-2.6.2 uuid-utils-0.12.0 xxhash-3.6.0 zstandard-0.25.0
WARNING: The following packages were previously imported in this runtime:
[certifi,packaging]
You must restart the runtime in order to use newly installed versions.

OBS: eu estou utilizando a openAI durante o curso.

1 resposta

Ei, Julia! Tudo bem?

Agradeço por aguardar o nosso retorno.

Nos imports você adiciona tanto para OpenAI como para GoogleAI, o que pode estar causando conflitos. Teste rodar os imports da seguinte maneira:

  • Limpeza do notebook:
pip install langchain langchain-openai chromadb
  • Depois, execute os imports:
import os
import warnings
warnings.filterwarnings("ignore")

from langchain.chains import ConversationalRetrievalChain
from langchain.memory import ConversationBufferWindowMemory
from langchain.vectorstores import Chroma
from langchain.document_loaders import TextLoader
from langchain.text_splitter import CharacterTextSplitter

from langchain_openai import ChatOpenAI, OpenAIEmbeddings

Reinicie o ambiente indo no menu superior, selecionando Ambiente de execução > Reiniciar a sessão e executar tudo.

Julia, a equipe já está ciente das mudanças recentes no LangChain e estamos atualizando e regravando o curso para evitar exatamente esse tipo de problema. No mais, sempre recomendamos utilizar as mesmas ferramentas que o instrutor para absorver melhor o conteúdo.

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

Até mais!

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