Zephyrnet Logo

Use RAG para descoberta de medicamentos com bases de conhecimento para Amazon Bedrock | Amazon Web Services

Data:

Rocha Amazônica fornece uma ampla gama de modelos da Amazon e de fornecedores terceirizados, incluindo Anthropic, AI21, Meta, Cohere e Stability AI, e cobre uma ampla variedade de casos de uso, incluindo geração de texto e imagem, incorporação, bate-papo, agentes de alto nível com raciocínio e orquestração e muito mais. Bases de conhecimento para Amazon Bedrock permite que você crie aplicativos de geração aumentada de recuperação (RAG) personalizados e de alto desempenho com base em armazenamentos de vetores da AWS e de terceiros usando modelos da AWS e de terceiros. As bases de conhecimento do Amazon Bedrock automatizam a sincronização de seus dados com seu armazenamento de vetores, incluindo a comparação dos dados quando eles são atualizados, o carregamento e a fragmentação de documentos, bem como a incorporação semântica. Ele permite que você personalize perfeitamente seus prompts RAG e estratégias de recuperação – nós fornecemos a atribuição da fonte e cuidamos do gerenciamento de memória automaticamente. As Bases de Conhecimento são completamente sem servidor, então você não precisa gerenciar nenhuma infraestrutura e, ao usar Bases de Conhecimento, você só será cobrado pelos modelos, bancos de dados vetoriais e armazenamento que usar.

RAG é uma técnica popular que combina o uso de dados privados com grandes modelos de linguagem (LLMs). O RAG começa com uma etapa inicial para recuperar documentos relevantes de um armazenamento de dados (mais comumente um índice vetorial) com base na consulta do usuário. Em seguida, emprega um modelo de linguagem para gerar uma resposta considerando tanto os documentos recuperados quanto a consulta original.

Nesta postagem, demonstramos como construir um fluxo de trabalho RAG usando bases de conhecimento do Amazon Bedrock para um caso de uso de descoberta de medicamentos.

Visão geral das bases de conhecimento do Amazon Bedrock

As bases de conhecimento do Amazon Bedrock oferecem suporte a uma ampla variedade de tipos de arquivos comuns, incluindo .txt, .docx, .pdf, .csv e muito mais. Para permitir a recuperação eficaz de dados privados, uma prática comum é primeiro dividir esses documentos em partes gerenciáveis. A Base de Conhecimento implementou uma estratégia de agrupamento padrão que funciona bem na maioria dos casos para permitir que você comece mais rapidamente. Se você quiser mais controle, as Bases de Conhecimento permitem controlar a estratégia de agrupamento por meio de um conjunto de opções pré-configuradas. Você pode controlar o tamanho máximo do token e a quantidade de sobreposição a ser criada entre os blocos para fornecer um contexto coerente à incorporação. As bases de conhecimento do Amazon Bedrock gerenciam o processo de sincronização de dados do seu Serviço de armazenamento simples da Amazon (Amazon S3), divide-o em partes menores, gera embeddings de vetores e armazena os embeddings em um índice de vetor. Esse processo vem com comparação inteligente, rendimento e gerenciamento de falhas.

Em tempo de execução, um modelo de incorporação é usado para converter a consulta do usuário em um vetor. O índice vetorial é então consultado para localizar documentos semelhantes à consulta do usuário, comparando os vetores do documento com o vetor de consulta do usuário. Na etapa final, documentos semanticamente semelhantes recuperados do índice vetorial são adicionados como contexto para a consulta original do usuário. Ao gerar uma resposta para o usuário, os documentos semanticamente semelhantes são solicitados no modelo de texto, juntamente com a atribuição da fonte para rastreabilidade.

As bases de conhecimento do Amazon Bedrock oferecem suporte a vários bancos de dados vetoriais, incluindo Amazon OpenSearch sem servidor, Aurora Amazônica, Pinecone e Redis Enterprise Cloud. As APIs Retrieve e RetrieveAndGenerate permitem que seus aplicativos consultem diretamente o índice usando uma sintaxe unificada e padrão sem precisar aprender APIs separadas para cada banco de dados vetorial diferente, reduzindo a necessidade de escrever consultas de índice personalizadas em seu armazenamento de vetores. A API Retrieve pega a consulta recebida, converte-a em um vetor de incorporação e consulta o armazenamento de back-end usando os algoritmos configurados no nível do banco de dados vetorial; a API RetrieveAndGenerate usa um LLM configurado pelo usuário fornecido pelo Amazon Bedrock e gera a resposta final em linguagem natural. O suporte nativo à rastreabilidade informa ao aplicativo solicitante sobre as fontes usadas para responder a uma pergunta. Para implementações empresariais, as Bases de Conhecimento suportam Serviço de gerenciamento de chaves AWS criptografia (AWS KMS), AWS CloudTrail integração e muito mais.

Nas seções a seguir, demonstramos como construir um fluxo de trabalho RAG usando bases de conhecimento para Amazon Bedrock, apoiado pelo mecanismo de vetor OpenSearch Serverless, para analisar um conjunto de dados de ensaio clínico não estruturado para um caso de uso de descoberta de medicamentos. Esses dados são ricos em informações, mas podem ser muito heterogêneos. O manuseio adequado de terminologia e conceitos especializados em diferentes formatos é essencial para detectar insights e garantir a integridade analítica. Com as bases de conhecimento do Amazon Bedrock, você pode acessar informações detalhadas por meio de consultas simples e naturais.

Crie uma base de conhecimento para o Amazon Bedrock

Nesta seção, demonstramos o processo de criação de uma base de conhecimento para o Amazon Bedrock por meio do console. Conclua as seguintes etapas:

  1. No console Amazon Bedrock, em Orquestração no painel de navegação, escolha Base de conhecimento.
  2. Escolha Criar base de conhecimento.

  1. No Detalhes da base de conhecimento seção, insira um nome e uma descrição opcional.
  2. No Permissões do IAM seção, selecione Criar e usar uma nova função de serviço.
  3. Escolha Função de nome de serviço, insira um nome para sua função, que deve começar com AmazonBedrockExecutionRoleForKnowledgeBase_.
  4. Escolha Próximo.

  1. No Fonte de dados seção, insira um nome para sua fonte de dados e o URI S3 onde o conjunto de dados está localizado. As bases de conhecimento suportam os seguintes formatos de arquivo:
    • Texto simples (.txt)
    • Remarcação (.md)
    • Linguagem de marcação de hipertexto (.html)
    • Documento do Microsoft Word (.doc/.docx)
    • Valores separados por vírgula (.csv)
    • Planilha do Microsoft Excel (.xls/.xlsx)
    • Formato de documento portátil (.pdf)
  1. Debaixo Configurações adicionais¸ escolha sua estratégia de chunking preferida (para esta postagem, escolhemos Segmentação de tamanho fixo) e especifique o tamanho do bloco e a sobreposição em porcentagem. Alternativamente, você pode usar as configurações padrão.
  2. Escolha Próximo.

  1. No Modelo de incorporações seção, escolha o modelo Titan Embeddings do Amazon Bedrock.
  2. No Banco de dados de vetores seção, selecione Crie rapidamente um novo armazenamento de vetores, que gerencia o processo de configuração de um armazenamento de vetores.
  3. Escolha Próximo.

  1. Revise as configurações e escolha Criar base de conhecimento.

  1. Aguarde a conclusão da criação da base de conhecimento e confirme se seu status é Pronto.
  2. No Fonte de dados seção, ou no banner na parte superior da página ou no pop-up na janela de teste, escolha sincronização para acionar o processo de carregamento de dados do bucket S3, dividindo-os em partes do tamanho especificado, gerando embeddings de vetores usando o modelo de incorporação de texto selecionado e armazenando-os no armazenamento de vetores gerenciado pelas bases de conhecimento do Amazon Bedrock.

A função de sincronização oferece suporte à ingestão, atualização e exclusão de documentos do índice vetorial com base em alterações em documentos no Amazon S3. Você também pode usar o StartIngestionJob API para acionar a sincronização por meio do AWS SDK.

Quando a sincronização for concluída, o histórico de sincronização mostrará o status Concluído.

Consulte a base de conhecimento

Nesta seção, demonstramos como acessar informações detalhadas na base de conhecimento por meio de consultas simples e naturais. Usamos um conjunto de dados sintéticos não estruturados que consiste em arquivos PDF, o número de página de cada um variando de 10 a 100 páginas, simulando um plano de ensaio clínico de um novo medicamento proposto, incluindo métodos de análise estatística e formulários de consentimento dos participantes. Usamos as bases de conhecimento do Amazon Bedrock retrieve_and_generate e retrieve APIs com Integração Amazon Bedrock LangChain.

Antes de escrever scripts que usam a API Amazon Bedrock, você precisará instalar a versão apropriada do AWS SDK em seu ambiente. Para scripts Python, este será o SDK da AWS para Python (Boto3):

pip install langchain
pip install boto3

Além disso, habilite o acesso ao modelo Amazon Titan Embeddings e ao Anthropic Claude v2 ou v1. Para obter mais informações, consulte Acesso ao modelo.

Gere perguntas usando Amazon Bedrock

Podemos usar o Anthropic Claude 2.1 para Amazon Bedrock para propor uma lista de perguntas a serem feitas no conjunto de dados do ensaio clínico:

import boto3
from langchain.llms.bedrock import Bedrock

bedrock_client = boto3.client("bedrock-runtime")

# Start with the query
prompt = "For medical research trial consent forms to sign, what are the top 5 questions can be asked?"

claude_llm = Bedrock(
    model_id="anthropic.claude-v2:1",
    model_kwargs={"temperature": 0, "top_k": 10, "max_tokens_to_sample": 3000},
    client=bedrock_client,
)

# Provide the prompt to the LLM to generate an answer to the query without any additional context provided
response = claude_llm(prompt)
questions = [
    item.split(".")[1].strip() for item in response.strip().split("nn")[1:-1]
]
questions
>>> answer:
'What is the purpose of the study? Make sure you understand the goals of the research and what the study procedures will entail',
'What are the risks and potential benefits? The form should explain all foreseeable risks, side effects, or discomforts you might experience from participating',
'What will participation involve? Get details on what tests, medications, lifestyle changes, or procedures you will go through, how much time it will take, and how long the study will last',
'Are there any costs or payments? Ask if you will be responsible for any costs related to the study or get paid for participating',
'How will my privacy be protected? The form should explain how your personal health information will be kept confidential before, during, and after the trial'

Usar a API Amazon Bedrock RetrieveAndGenerate

Para uma experiência RAG totalmente gerenciada, você pode usar as bases de conhecimento nativas do Amazon Bedrock RetrieveAndGenerate API para obter as respostas diretamente:

bedrock_agent_client = boto3.client("bedrock-agent-runtime")

kb_id = "<YOUR_KNOWLEDGE_BASE_ID>"

def retrieveAndGenerate(
    input: str,
    kbId: str,
    region: str = "us-east-1",
    sessionId: str = None,
    model_id: str = "anthropic.claude-v2:1",
):
    model_arn = f"arn:aws:bedrock:{region}::foundation-model/{model_id}"

    if sessionId:
        return bedrock_agent_client.retrieve_and_generate(
            input={"text": input},
            retrieveAndGenerateConfiguration={
                "type": "KNOWLEDGE_BASE",
                "knowledgeBaseConfiguration": {
                    "knowledgeBaseId": kbId,
                    "modelArn": model_arn,
                },
            },
            sessionId=sessionId,
        )

    else:
        return bedrock_agent_client.retrieve_and_generate(
            input={"text": input},
            retrieveAndGenerateConfiguration={
                "type": "KNOWLEDGE_BASE",
                "knowledgeBaseConfiguration": {
                    "knowledgeBaseId": kbId,
                    "modelArn": model_arn,
                },
            },
        )

response = retrieveAndGenerate(
    "What are the potential risks and benefits of participating?", kb_id
)

generated_text = response["output"]["text"]
>>> "The potential risks include side effects from the study medication lithium such as nausea, loose stools, thirst, urination changes, shakiness, headaches, sweating, fatigue, decreased concentration, and skin rash. There is also a risk of lithium interaction with other medications. For women, there is a risk of birth defects if lithium is taken during pregnancy. There are no guaranteed benefits, but possible benefits include new information that could help the participant from the interviews and tests conducted during the study."

A fonte de informação citada pode ser obtida por meio do seguinte código (com parte da saída redigida por questões de brevidade):

response["citations"]

>>> [
    {
        "generatedResponsePart": {
            "textResponsePart": {
                "text": " The potential risks include side effects from the study...",
                "span": {"start": 0, "end": 361},
            }
        },
        "retrievedReferences": [
            {
                "content": {
                    "text": "590 ICF#2 Page 7 of 19 The primary risks and discomforts of participation…"
                },
                "location": {"type": "S3", "s3Location": {"uri": "s3://XXXX/XXXX.pdf"}},
            },
            {
                "content": {
                    "text": "N/A CSP 590 ICF#2 Page 10 of 19 Risks associated with suddenly stopping study medications..."
                },
                "location": {"type": "S3", "s3Location": {"uri": "s3://XXXX/XXXX.pdf"}},
            },
        ],
    },
    {
        "generatedResponsePart": {
            "textResponsePart": {
                "text": " There are no guaranteed benefits, but possible benefits include...",
                "span": {"start": 363, "end": 531},
            }
        },
        "retrievedReferences": [
            {
                "content": {
                    "text": "research, not usual clinical care. After these are done we ask..."
                },
                "location": {"type": "S3", "s3Location": {"uri": "s3://XXXX/XXXX.pdf"}},
            }
        ],
    },
]

Ao passar o ID da sessão do RetrieveAndGenerate API, você pode preservar o contexto da conversa e fazer perguntas de acompanhamento. Por exemplo, sem o contexto, se você pedir mais detalhes da resposta anterior, talvez ela não consiga responder corretamente:

retrieveAndGenerate("elaborate more on the first side effect", kb_id, sessionId=None)["output"]["text"]
>>> "The search results do not provide additional details about the mild nausea side effect that would allow me to elaborate further on it."

Mas ao passar o ID da sessão, o pipeline RAG é capaz de identificar o contexto correspondente e retornar respostas relevantes:

retrieveAndGenerate("elaborate more on the first side effect", kb_id, sessionId=response["sessionId"])["output"]["text"]
>>> "The search results provide details that nausea from taking lithium is usually mild and goes away after days or weeks for most people. Specifically, up to 75% of people may experience mild nausea when first starting lithium, but this goes away in 90-99% of people who continue taking it."

A tabela a seguir mostra as respostas recuperadas para todas as perguntas correspondentes.

Questão Resposta
Qual é o objetivo do estudo? Certifique-se de compreender os objetivos da pesquisa e o que os procedimentos do estudo implicarão. O objetivo do estudo é testar se o lítio é eficaz na prevenção da violência autodirigida suicida repetida em pacientes com depressão ou transtorno bipolar.
Quais são os riscos e benefícios potenciais? O formulário deve explicar todos os riscos, efeitos colaterais ou desconfortos previsíveis que você pode sentir ao participar. Os possíveis riscos ou desconfortos incluem: as perguntas da entrevista que causam desconforto, efeitos colaterais da medicação de lítio, como náuseas, fezes moles, sede, alterações na micção, tremores, dores de cabeça, sudorese, fadiga, diminuição da concentração, erupção cutânea, alterações na tireoide, agravamento da acne /psoríase, toxicidade do lítio e riscos se a medicação for interrompida repentinamente. Os benefícios potenciais são que os testes podem levar a novas informações para ajudar o participante, e o lítio pode ajudar a prevenir a violência autodirigida suicida repetida para aqueles com depressão ou transtorno bipolar.
O que envolverá a participação? Obtenha detalhes sobre quais exames, medicamentos, mudanças no estilo de vida ou procedimentos você realizará, quanto tempo levará e quanto tempo durará o estudo. A participação envolverá o preenchimento de uma entrevista e questionários cobrindo pensamentos, comportamentos, tratamento de saúde mental, medicamentos, uso de álcool e drogas, apoio doméstico e social e compreensão do estudo de pesquisa. Isso leva cerca de duas horas e pode ser feito em várias sessões, pessoalmente e por telefone. Se for elegível para o estudo completo, haverá cerca de 20 visitas de estudo durante um ano. Isso envolverá tomar a medicação do estudo, verificar os sinais vitais, preencher questionários, revisar os efeitos colaterais e continuar os cuidados médicos e de saúde mental normais.
Existem custos ou pagamentos? Pergunte se você será responsável por quaisquer custos relacionados ao estudo ou se será pago pela participação. Sim, existem custos e pagamentos discutidos nos resultados da pesquisa. Você não será cobrado por nenhum tratamento ou procedimento que faça parte do estudo. No entanto, você ainda terá que pagar quaisquer co-pagamentos habituais do VA para cuidados e medicamentos não relacionados ao estudo. Você não será pago pela participação, mas o estudo reembolsará despesas relacionadas à participação, como transporte, estacionamento, etc. Os valores e o processo de reembolso serão fornecidos.
Como minha privacidade será protegida? O formulário deve explicar como as suas informações pessoais de saúde serão mantidas confidenciais antes, durante e depois do estudo. Sua privacidade será protegida através da realização de entrevistas em particular, mantendo anotações escritas em arquivos e escritórios trancados, armazenando informações eletrônicas em arquivos criptografados e protegidos por senha e obtendo um Certificado de Confidencialidade do Departamento de Saúde e Serviços Humanos para evitar a divulgação de informações que o identifiquem. . As informações que o identificam podem ser compartilhadas com os médicos responsáveis ​​pelos seus cuidados ou para auditorias e avaliações de agências governamentais, mas palestras e documentos sobre o estudo não irão identificá-lo.

Consultar usando a API Amazon Bedrock Retrieve

Para personalizar seu fluxo de trabalho RAG, você pode usar a API Retrieve para buscar os blocos relevantes com base em sua consulta e passá-los para qualquer LLM fornecido pelo Amazon Bedrock. Para usar a API Retrieve, defina-a da seguinte forma:

def retrieve(query: str, kbId: str, numberOfResults: int = 5):
    return bedrock_agent_client.retrieve(
        retrievalQuery={"text": query},
        knowledgeBaseId=kbId,
        retrievalConfiguration={
            "vectorSearchConfiguration": {"numberOfResults": numberOfResults}
        },
    )

Recupere o contexto correspondente (com parte da saída redigida por questões de brevidade):

query = "What is the purpose of the medical research study?"
response = retrieve(query, kb_id, 3)
retrievalResults = response["retrievalResults"]
>>> [
    {
        "content": {"text": "You will not be charged for any procedures that..."},
        "location": {"type": "S3", "s3Location": {"uri": "s3://XXXXX/XXXX.pdf"}},
        "score": 0.6552521,
    },
    {
        "content": {"text": "and possible benefits of the study. You have been..."},
        "location": {"type": "S3", "s3Location": {"uri": "s3://XXXX/XXXX.pdf"}},
        "score": 0.6581577,
    },
    ...,
]

Extraia o contexto do modelo de prompt:

def get_contexts(retrievalResults):
    contexts = []
    for retrievedResult in retrievalResults:
        contexts.append(retrievedResult["content"]["text"])
    return " ".join(contexts)

contexts = get_contexts(retrievalResults)

Importe os módulos Python e configure o modelo de prompt de resposta a perguntas no contexto e, em seguida, gere a resposta final:

from langchain.prompts import PromptTemplate

PROMPT_TEMPLATE = """
Human: You are an AI system working on medical trial research, and provides answers to questions 
by using fact based and statistical information when possible.
Use the following pieces of information to provide a concise answer to the question enclosed in <question> tags.
If you don't know the answer, just say that you don't know, don't try to make up an answer.

<context>
{context_str}
</context>

<question>
{query_str}
</question>

The response should be specific and use statistics or numbers when possible.

Assistant:"""

claude_prompt = PromptTemplate(
    template=PROMPT_TEMPLATE, input_variables=["context_str", "query_str"]
)

prompt = claude_prompt.format(context_str=contexts, query_str=query)
response = claude_llm(prompt)
>>> "Based on the context provided, the purpose of this medical research study is to evaluate the efficacy of lithium compared to a placebo in preventing suicide over a 1 year period. Specifically, participants will be randomly assigned to receive either lithium or a placebo pill for 1 year, with their doctors and the participants themselves not knowing which treatment they receive (double-blind). Blood lithium levels will be monitored and doses adjusted over the first 6-8 visits, then participants will be followed monthly for 1 year to assess outcomes."

Consulta usando integração Amazon Bedrock LangChain

Para criar um aplicativo de perguntas e respostas personalizado completo, o Knowledge Bases for Amazon Bedrock oferece integração com LangChain. Para configurar o recuperador LangChain, forneça o ID da base de conhecimento e especifique o número de resultados a serem retornados da consulta:

from langchain.retrievers.bedrock import AmazonKnowledgeBasesRetriever

retriever = AmazonKnowledgeBasesRetriever(
    knowledge_base_id=kb_id,
    retrieval_config={"vectorSearchConfiguration": {"numberOfResults": 4}},
)

Agora configure o LangChain RetrievalQA e gere respostas a partir da base de conhecimento:

from langchain.chains import RetrievalQA

qa = RetrievalQA.from_chain_type(
    llm=claude_llm,
    chain_type="stuff",
    retriever=retriever,
    return_source_documents=True,
    chain_type_kwargs={"prompt": claude_prompt},
)

[qa(q)["result"] for q in questions]

Isto irá gerar respostas correspondentes semelhantes às listadas na tabela anterior.

limpar

Certifique-se de excluir os seguintes recursos para evitar cobranças adicionais:

Conclusão

O Amazon Bedrock oferece um amplo conjunto de serviços profundamente integrados para potencializar aplicações RAG de todas as escalas, facilitando o início da análise dos dados da sua empresa. As bases de conhecimento do Amazon Bedrock integram-se aos modelos básicos do Amazon Bedrock para criar pipelines escalonáveis ​​de incorporação de documentos e serviços de recuperação de documentos para potencializar uma ampla variedade de aplicativos internos e voltados para o cliente. Estamos entusiasmados com o futuro e seu feedback desempenhará um papel vital na orientação do progresso deste produto. Para saber mais sobre os recursos do Amazon Bedrock e das bases de conhecimento, consulte Base de conhecimento do Amazon Bedrock.


Sobre os autores

Marcos Roy é o principal arquiteto de aprendizado de máquina da AWS, ajudando os clientes a projetar e criar soluções de IA/ML. O trabalho de Mark abrange uma ampla variedade de casos de uso de ML, com interesse principal em visão computacional, aprendizado profundo e dimensionamento de ML em toda a empresa. Ele ajudou empresas em muitos setores, incluindo seguros, serviços financeiros, mídia e entretenimento, saúde, serviços públicos e manufatura. Mark possui seis certificações da AWS, incluindo a certificação de especialidade de ML. Antes de ingressar na AWS, Mark foi arquiteto, desenvolvedor e líder de tecnologia por mais de 25 anos, incluindo 19 anos em serviços financeiros.

Mani Khanuja é líder de tecnologia – Generative AI Specialists, autora do livro – Applied Machine Learning and High Performance Computing on AWS e membro do Conselho de Administração da Women in Manufacturing Education Foundation Board. Ela lidera projetos de aprendizado de máquina (ML) em vários domínios, como visão computacional, processamento de linguagem natural e IA generativa. Ela ajuda os clientes a construir, treinar e implantar grandes modelos de aprendizado de máquina em escala. Ela fala em conferências internas e externas como re:Invent, Women in Manufacturing West, webinars no YouTube e GHC 23. Em seu tempo livre, ela gosta de fazer longas corridas na praia.

Dr. Baichuan Sun, atualmente atuando como arquiteto sênior de soluções de IA/ML na AWS, concentra-se em IA generativa e aplica seu conhecimento em ciência de dados e aprendizado de máquina para fornecer soluções de negócios práticas baseadas em nuvem. Com experiência em consultoria de gestão e arquitetura de soluções de IA, ele aborda uma série de desafios complexos, incluindo visão computacional robótica, previsão de séries temporais e manutenção preditiva, entre outros. Seu trabalho é baseado em uma sólida experiência em gerenciamento de projetos, pesquisa e desenvolvimento de software e atividades acadêmicas. Fora do trabalho, o Dr. Sun gosta de viajar e passar tempo com a família e amigos.

Derrick Choo é arquiteto de soluções sênior na AWS, focado em acelerar a jornada dos clientes para a nuvem e transformar seus negócios por meio da adoção de soluções baseadas em nuvem. Sua experiência é em desenvolvimento de aplicativos full stack e aprendizado de máquina. Ele ajuda os clientes a projetar e construir soluções completas que abrangem interfaces de usuário front-end, aplicativos IoT, API e integrações de dados e modelos de aprendizado de máquina. Nas horas vagas, gosta de passar tempo com a família e experimentar fotografia e videografia.

Frank winkler é arquiteto de soluções sênior e especialista em IA generativa na AWS, baseado em Cingapura, com foco em aprendizado de máquina e IA generativa. Ele trabalha com empresas nativas digitais globais para arquitetar produtos e serviços escalonáveis, seguros e econômicos na AWS. Nas horas vagas, ele passa o tempo com o filho e a filha e viaja para curtir as ondas da ASEAN.

Nihir Chadderwala é arquiteto sênior de soluções de IA/ML na equipe global de saúde e ciências biológicas. Sua experiência está na construção de soluções baseadas em Big Data e IA para problemas de clientes, especialmente nas áreas biomédica, ciências biológicas e saúde. Ele também está entusiasmado com a interseção da ciência da informação quântica e da IA ​​e gosta de aprender e contribuir para esse espaço. Nas horas vagas, ele gosta de jogar tênis, viajar e aprender cosmologia.

local_img

Inteligência mais recente

local_img