Artigo Heloisa Paiva · Nov. 16, 2024 2m read

Oi Comunidade!

Nós sabemos que às vezes você pode precisar procurar informação ou pessoas na nossa Comunidade! Então para facilitar isso, aqui está uma publicação de como usar diferentes tipos de pesquisas:

  • achar algo na Comunidade
  • achar algo nas suas próprias publicações
  • achar um membro pelo nome
0
0 40
Artigo Heloisa Paiva · Nov. 14, 2024 1m read

Oi Comunidade,

Alguns de vocês gostariam de compartilhar um evento (online ou offline) com os outros na nossa Comunidade e aqui está um tutorial de como criar um Evento para convidar nossos queridos membros.

O desafio principal ao criar um evento é preencher todas as informações necessárias nos lugares corretos. Então vamos ver o que precisa ser feito.

0
0 46
Artigo Heloisa Paiva · Nov. 10, 2024 1m read

Rubrica InterSystems FAQ 

Isso pode ser obtido com uma query de lista da classe %SYS.Namespace

1. Crie uma rotina assim:

getnsp
   set statement=##class(%SQL.Statement).%New()
   set status=statement.%PrepareClassQuery("%SYS.Namespace","List")
   set resultset=statement.%Execute()
   while resultset.%Next() {
       write resultset.%Get("Nsp"),!
   }
   quit

2. Rode no seu terminal

USER>do ^getnsp
%SYS
DOCBOOK
SAMPLES
USER

O método de executar queries de classe introduzido nesse artigo pode ser aplicado em uma variedade de classes

Você pode ver várias queries de classe na referência de classe

0
0 48
Artigo Heloisa Paiva · Nov. 8, 2024 1m read

Perguntas frequentes da InterSystems 

O número máximo de namespaces que se podem criar em uma instância é de 2047. No entanto, para utilizar um grande número de namespaces, é necessário configurar a memória adequadamente.

O número máximo de bases de dados (incluso as bases de dados remotas) que se pode criar em uma instância é de 15.998. Dependendo do tipo de licença, pode haver restrições sobre a quantidade que se pode criar. Para mais detalhes, consulte o seguinte documento.

Configuração da Base de Dados [IRIS]
Configuração da Base de Dados

0
0 45
Artigo Heloisa Paiva · Nov. 6, 2024 5m read

Bem-vindo à terceira e última publicação de nossos artigos dedicados ao desenvolvimento de aplicações RAG baseadas em modelos LLM. Neste último artigo, veremos, com base em nosso pequeno projeto de exemplo, como podemos encontrar o contexto mais adequado para a pergunta que queremos enviar ao nosso modelo LLM e para isso utilizaremos a funcionalidade de busca vetorial incluída no IRIS.

Meme Creator - Funny Context Meme Generator at MemeCreator.org!

Pesquisas vetoriais

Um elemento-chave de qualquer aplicação RAG é o mecanismo de busca vetorial, que permite pesquisar dentro de uma tabela com registros desse tipo aqueles mais semelhantes ao vetor de referência.

0
0 134
Artigo Heloisa Paiva · Nov. 4, 2024 6m read

Continuamos com esta série de artigos sobre LLMs e aplicações RAG e neste artigo discutiremos a parte da caixa vermelha do seguinte diagrama:

No processo de criação de uma aplicação RAG, escolher um modelo LLM adequado às suas necessidades (treinado no assunto correspondente, custos, velocidade, etc.) é tão importante quanto ter um claro entendimento do contexto que você deseja fornecer. Vamos começar definindo o termo para ficarmos claros sobre o que entendemos por contexto.

O que é contexto?

0
0 374
Artigo Heloisa Paiva · Out. 28, 2024 4m read

Você provavelmente já ouviu falar muito sobre LLMs (Large Language Models) e o desenvolvimento associado de aplicações RAG (Retrieval Augmented Generation) no último ano. Bem, nesta série de artigos explicaremos os fundamentos de cada termo usado e veremos como desenvolver uma aplicação RAG simples.

O que é um LLM?

Modelos LLM fazem parte do que conhecemos como IA generativa e sua fundação é a vetorização de enormes quantidades de textos.

1
0 356
Artigo Heloisa Paiva · Out. 24, 2024 7m read

fastapi_logo

Descrição

Este é um modelo para um aplicativo FastAPI que pode ser implantado no IRIS como um aplicativo Web nativo.

Instalação

  1. Clone o repositório
  2. Crie um ambiente virtual
  3. Instale os requisitos
  4. Execute o arquivo docker-compose
git clone
cd iris-fastapi-template
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
docker-compose up

Uso

A URL base é http://localhost:53795/fastapi/.

Endpoints

  • /iris - Retorna um objeto JSON com as 10 principais classes presentes no namespace IRISAPP.
  • /interop - Um endpoint de ping para testar a estrutura de interoperabilidade do IRIS.
0
0 58
Artigo Heloisa Paiva · Out. 22, 2024 9m read

django_logo

Descrição

Este é um modelo para um aplicativo Django que pode ser implantado no IRIS como um aplicativo Web nativo.

Instalação

  1. Clone o repositório
  2. Crie um ambiente virtual
  3. Instale os requisitos
  4. Rode o arquivo docker-compose
git clone
cd iris-django-template
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
docker-compose up

Uso

A URL base é http://localhost:53795/django/.

Endpoints

  • /iris - Retorna um objeto JSON com as 10 principais classes presentes no namespace IRISAPP.
  • /interop - Um endpoint de ping para testar a estrutura de interoperabilidade do IRIS.
0
0 43
Artigo Heloisa Paiva · Out. 20, 2024 6m read

Flask_logo

Descrição

Este é um modelo para um aplicativo Flask que pode ser implantado no IRIS como um aplicativo Web nativo.

Instalação

  1. Clone o repositório
  2. Crie um ambiente virtual
  3. Instale os requisitos
  4. Rode o arquivo docker-compose
git clone
cd iris-flask-template
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
docker-compose up

Uso

A URL de base http://localhost:53795/flask/.

Endpoints

  • /iris - Retorna um objeto JSON com as 10 principais classes presentes no namespace IRISAPP.
0
0 62
Artigo Heloisa Paiva · Out. 18, 2024 4m read

wsgi_logo

Contexto

A Interface de Gateway de Servidor Web (WSGI) é uma convenção de chamada simples para servidores web encaminharem solicitações para aplicativos web ou frameworks escritos na linguagem de programação Python. WSGI é um padrão Python descrito detalhadamente em PEP 3333.

🤔 Ok, ótima definição, e qual o objetivo com o iris?

O IRIS 2024.2+ possui um novo recurso que permite que você execute aplicativos WSGI diretamente no IRIS. Esse recurso é uma ótima maneira de integrar o IRIS com outros frameworks e bibliotecas Python.

0
0 78
Artigo Heloisa Paiva · Out. 16, 2024 2m read

Olá Comunidade,

Este artigo tem como objetivo guiá-lo pelo processo de configuração e utilização do recurso Python Runtime Flexível para Python embutido. Antes da versão 2024.2, o instalador do InterSystems IRIS incluía uma versão pré-instalada do Python. Você pode encontrar as bibliotecas Python e os arquivos de aplicação localizados no diretório \lib\python dentro da sua pasta de instalação do IRIS (por exemplo, C:\InterSystems\IRIS20242\lib\python).

No entanto, a partir da versão 2024.2, o instalador do IRIS não mais inclui a instalação do Python por padrão.

0
0 45
Artigo Heloisa Paiva · Out. 14, 2024 2m read

Em ObjectScript, você tem uma ampla coleção de funções que retornam algum valor tipicamente:

set variable = $somefunction(param1,param2, ...)

Não há nada de especial nisso.
Mas há um conjunto de funções que classifico como Funções de Lado Esquerdo
A especialidade delas é que você também pode usá-las à esquerda do operador igual como um alvo no comando SET:

set $somefunction(param1,param2, ...) = value

0
0 44
Artigo Heloisa Paiva · Out. 14, 2024 9m read

Este programa de demonstração é usado para mostrar como um perfil FHIR personalizado pode ser empregado para validar a conformidade dos dados. O guia de implementação FHIR personalizado foi desenvolvido com base na Versão R4 do FHIR, e, neste exemplo, implementa a extensão do recurso Organização para validar a conformidade dos dados.

Instalação

  1. Faça o Download do projeto via Git clone.
  2. Execute docker-compose up -d para criar e iniciar o contêiner, a execução inicial baixará as imagens de contêiner necessárias e a execução do script levará de 5 a 10 minutos (dependendo da máquina).
0
0 48
Artigo Heloisa Paiva · Out. 10, 2024 2m read

Olá comunidade!

Eu trago aqui uma dica para poupar algumas horas do seu dia. A documentação InterSystems especifica muito bem como criar um script de freeze para as instâncias, mas não traz exemplos em instâncias espelhadas, onde queremos deixar o script automático, mas só rodar efetivamente na instância primária.

Primeiro, vamos criar uma classe abstrata no namespace %SYS com métodos que verificam se a instância é primária e, caso positivo, executam o freeze.

Class User.custom.FreezeThaw.
0
0 70
Artigo Heloisa Paiva · Out. 4, 2024 4m read

Então, se você está acompanhando do post anterior ou entrando agora, vamos passar para o mundo dos aplicativos eBPF e dar uma olhada no Parca, que se baseia em nossa breve investigação de gargalos de desempenho usando eBPF, mas coloca um aplicativo incrível no topo do seu cluster para monitorar todas as suas cargas de trabalho iris, continuamente, em todo o cluster!

Perfilamento Contínuo com Parca, Cargas de Trabalho IRIS em Todo o Cluster

0
0 52
Artigo Heloisa Paiva · Out. 2, 2024 15m read

Eu estive na Cloud Native Security Con em Seattle com total intenção de entrar no dia de OTEL, então lendo o assunto de segurança aplicada a fluxos de trabalho Cloud Native nos dias seguintes até CTF como um exercício profissional. Isso foi felizmente finalizado por um novo entendimento de eBPF, que tem minhas telas, carreira, fluxos de trabalho e atitude com muita necessidade de uma melhoria com novas abordagens para resolver problemas de fluxo de trabalho.

Então, consegui chegar à festa do eBPF e desde então tenho participado de clínica após clínica sobre o assunto. Aqui, gostaria de "desempacotar" o eBPF como uma solução técnica, mapeada diretamente para o que fazemos na prática (mesmo que esteja um pouco fora), e passar pelo eBPF através da minha experimentação em suporte a cargas de trabalho InterSystems IRIS, particularmente no Kubernetes, mas não necessariamente vazio em cargas de trabalho autônomas.

Passos eBee com eBPF e fluxos de trabalho InterSystems IRIS

0
0 41
Artigo Heloisa Paiva · Set. 30, 2024 1m read

Tem um jeito fácil de adicionar um certificado (CA - certificate authority) às suas configurações no InterSystems IRIS 2019.1 (e 2018.1.2) no Windows e Mac. Você pode pedir para o IRIS usar a loja de certificados do sistema operacional usando:

%OSCertificateStore

no campo "File containing Trusted Certificate Authority X.509 certificate(s)". Aqui está uma imagem de como fazer isso no portal:

E aqui está um  linkpara a documentação que descreve isto. Está na lista de opções abaixo de  "File containing trusted Certificate Authority certificate(s)".

Isso é tudo que você precisa fazer!

0
0 74
Artigo Heloisa Paiva · Set. 28, 2024 1m read

Baseado num ótimo exemplo e workshop construído por @Luis Angel Pérez Ramos (veja artigos relacionados e o Open Exchange app relacionado), que incluiu um container local InterSystems for Health (e setup desejado), essa amostra apresentada aqui, adaptada do workshop para usar o InterSystems Cloud FHIR Server, e suas definições relacionadas.

0
0 49
Artigo Heloisa Paiva · Set. 26, 2024 5m read

Na sessão anterior, exploramos o processo de instalação e começamos a escrever o IRIS em Python nativo. Agora procederemos a examinar a global percorrida e interatuar com os objetos da classe IRIS

get: esta função se utiliza para obter valores do nó percorrido

def traversal_firstlevel_subscript():
    """
    ^mygbl(235)="test66,62" and ^mygbl(912)="test118,78"
    """
    for  i in irispy.node('^mygbl'):
        print(i, gbl_node.get(i,''))

node e items: percorrido de um só nível com node  e obtenção dos valores da mesma maeira que $Order(^mygbl(subscript), direction, data).

0
0 41
Artigo Heloisa Paiva · Set. 24, 2024 1m read

Talvez você saiba que você pode pesquisar por postagens na CD por Tags
inicinando na borda esquerda acima    e 

Para comçar isso está ótimo. Porém, baseado em alguns feedbacks locais, algumas melhorias poderiam tornar mais útil. O SELECT funciona IF TAGS CONTAIN%tag. Isso enche você de vários resultados frequentemente muito mais úteis. As sugestões para as extensões:

  • ... IF TAGS CONTAINS ONLY %tag   // para uma Tag específica
  • ... IF TAGS CONTAIN  (%tag1,%tag2,%tag3,...)    // várias tags específicas
1
0 47
Artigo Heloisa Paiva · Set. 22, 2024 1m read

Rubrica InterSystems FAQ

No SQL, dados NULL e a string vazia ('') são dados diferentes. O método para definir e checar cada uma é como se segue

(1) dado NULL

[SQL] 

insert into test(a) values(NULL)
select * from test where a IS NULL

[InterSystems ObjectScript]

set x=##class(User.test).%New()
set x.a=""

(2) String Vazia ('')

[SQL]

insert into test(a) values('')
select * from test where a = ''

[InterSystems ObjectScript]

set x=##class(User.test).%New()
set x.a=$C(0)

Para mais informações, por favor veja os seguintes documentos:

NULL e strings vazias [IRIS]
NULL e strings vazias

0
0 62
Artigo Heloisa Paiva · Set. 18, 2024 7m read

No último artigo nós apresentamos a arquitetura do nosso projeto SMART On FHIR, então agora é o momento de colocar a mão na massa e começar a configurar os elementos que vamos precisar. 

Vamos começar com Auth0.

Configuração AUTH0

Vamos começar criando uma conta Auth0 com um email válido. Uma vez registrada, vamos criar nossa primeira aplicação e faremos isso do menu a esquerda:

Application menu

Em nosso exemplo, a aplicação será do tipo Single Page Web Application, como é uma aplicação desenvolvida em Angular 16. Selecionamos esta opção e clicamos em Create.

Single Page Web Application

0
0 52
Artigo Heloisa Paiva · Set. 16, 2024 1m read

[FAQ] Preguntas frecuentes de InterSystems

O seguinte código baixa https://www.intersystems.com/assets/intersystems-logo.png e salva o arquivo como c:\temp\test.png.

É necessário definir uma configuração SSL chamada SSLTEST antes de executar esse código

ClassMethod download() As %Status
{
    Set sc = $$$OK
    Set httprequest=##class(%Net.HttpRequest).%New()
    set httprequest.Port = 443
    set httprequest.Https = 1
    set httprequest.SSLConfiguration = "SSLTEST"
    Set httprequest.Server="www.intersystems.com"
    Do httprequest.Get("/assets/intersystems-logo.
0
0 46
Artigo Heloisa Paiva · Set. 14, 2024 4m read

Introdução

Eu recentemente participei no "mão na massa" fantasticamente organizado pelo @Patrick Jamieson no qual uma aplicação Angular foi configurada junto com um servidor IRIS FHIR seguindo os protocolos definidos pelo SMART On FHIR e eu o achei muito interessante, então decidi desenvolver a minha própria aplicação Angular e então usar o que aprendi e publicar na comunidade.

SMART On FHIR

Vamos ver o que o Google nos conta sobre o SMART On FHIR:

SMART on FHIR é um padrão de dados que permite que aplicações acessem informação em sistemas de registro eletrônico de saúde (EHR).

0
0 79
Artigo Heloisa Paiva · Set. 12, 2024 4m read

Olá comunidade

Nós experimentamos anteriormente o Python embutido em IRIS; no entanto, eu ainda não tive a oportunidade de implementar IRIS usando Python nativo. Nesse artigo, vou percorrer os passos que eu usei para começar a aprender e implementar IRIS dentro da fonte Python. Eu também gostaria de agradecer @Guillaume Rongier e @LuisAngel.PérezRamos pela ajuda resolvendo os problemas que encontrei durante minha recente instalação PIP de IRIS no Python, que eu habilitei para funcionar adequadamente.

Vamos começar a escrever IRIS em Python.

0
0 69