New post

Find

Announcement
· Jun 5

Cambridge Developer Meetup - Building and Evaluating Agentic Generative Retrieval Systems

Join our next in-person Developer Meetup in Cambridge to explore the latest trends, tools, and features for innovating on data. This time we will dive into Building and Evaluating Agentic Generative Retrieval Systems.

Talk 1
Agentic Retrieval: Techniques beyond Vector Search
Speaker: Suprateem Banerjee, Sales Engineer - AI Specialist

Talk 2
Setting up testing frameworks to quantitatively measure improvements in agentic systems
This talk with cover how open source libraries such as langfuse and deepeval can be leveraged to see how improvements to prompts, llm models and tools change an agent / RAG system's performance. We will briefly cover how these systems work before delving into how they can be combined together.
Speaker: @Jayesh Gupta, Solutions Developer, InterSystems

>> Register here

 

⏱ Day and Time: July 9, 5:30 p.m. to 7:30 p.m.
NEW VENUE ALERT:
📍Amazon Boston Office, 55 Pier 4 Blvd, Boston, MA 02210

Save your seat now!

Food, beverages, and networking opportunities will be provided as always.
Join our Discord channel to connect with developers from the InterSystems developer ecosystem.

Discussion (0)1
Log in or sign up to continue
Announcement
· Jun 5

[Video] Role of Data and Interoperability in Effective AI in Healthcare

Hey Community!

We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:

⏯  Role of Data and Interoperability in Effective AI in Healthcare

This video is focused on the role of data and interoperability in enabling effective AI in healthcare. The discussion covers the importance of data normalization, patient matching, and adherence to national standards in both traditional machine learning and generative AI applications. Insights are shared on how healthcare organizations can better prepare their data strategies to support accurate and trustworthy AI outcomes.

Presenters:
🗣 @Don Woodlock, Head of Global Healthcare Solutions, InterSystems
🗣 Jay Nakashima, President, eHealth Exchange, Board Member

Enjoy watching, and subscribe for more videos! 👍

Discussion (0)1
Log in or sign up to continue
Question
· Jun 5

SQL Procedure - Equivalent to "IN LIKE"

How would you go about creating an SQL Stored Procedure that would result in the same output as "IN LIKE"?
For example...


CustomersTable

RecordId CustomerName
123 Mark Stevens
456 Betty Johnson
789 John Stevens
321 Brian Smith
654 John Markson
987 Tom Obrian
select *
from CustomersTable
where inLike('%Mark%', '%John%')

Would return:

123 Mark Stevens
456 Betty Johnson
789 John Stevens
654 John Markson
5 Comments
Discussion (5)2
Log in or sign up to continue
Article
· Jun 5 5m read

Usando Django e Vue.js para criar uma aplicação web no IRIS: Explorando o framework Django

Por muito tempo, eu quis aprender o framework Django, mas sempre surgia algum projeto mais urgente que acabava tomando prioridade. Como muitos desenvolvedores, eu uso Python para projetos de machine learning, mas quando comecei a aprender programação para web, o PHP ainda dominava. Então, quando precisei escolher um framework mais robusto para criar aplicações web e publicar meu trabalho de machine learning, acabei voltando para o PHP. Durante um tempo, utilizei o framework Laravel para construir meus sites, e foi com ele que conheci o padrão Model-View-Controller (MVC) moderno de programação web. Para deixar as coisas ainda mais complexas, gosto de desenvolver o front-end usando um framework moderno de JavaScript. O que eu mais domino é o Vue.js, então mantive essa escolha nesse projeto — embora seja mais comum ver as pessoas usando React.

Por que usar um framework complexo afinal? Quais os maiores desafios de aprender um framework como Django, Laravel, React ou Vue?

Cada um tem sua resposta para isso, mas eu passei a gostar de frameworks MVC porque eles oferecem uma estrutura clara para organizar o projeto. Isso me evita ter que reinventar a roda toda vez. No começo, esses frameworks podem parecer restritivos e confusos, mas, depois que você se familiariza com a estrutura, fica mais fácil adicionar novas funcionalidades.

O desafio é que as coisas podem até ficar “simples demais”. Frameworks como o Django usam muitas convenções e atalhos, baseados em conceitos comuns, mas com nomes e estruturas específicas. No meu projeto, por exemplo, o Django gerencia as APIs e todo o roteamento web. Se quero adicionar um novo endpoint de API, preciso criar uma função no arquivo views.py, depois ir até o urls.py e adicionar uma instrução para importar essa função e outra para definir a URL onde esse endpoint estará disponível. Depois disso, preciso editar meu componente Vue para, via JavaScript, consultar esse endpoint, exibir os dados ou manipulá-los para o usuário.

Depois que o projeto está configurado, adicionar novas funcionalidades é rápido. Basta incluir umas quatro linhas de código e posso focar na lógica da função nova no views.py para processar a requisição HTTP e devolver os dados em JSON. O mais desafiador é entender como esses arquivos funcionam juntos para formar a aplicação como um todo.

Eu encontrei a melhor maneira de aprender um frameowork com Django, basicamente, é encontrar um projeto funcionando e começar a fazer pequenas alterações para entender o fluxo dos dados. Consultar a documentação conforme os conceitos vão ficando mais claros e pedir para modelos de IA explicarem trechos de código e a função dos arquivos padrão de um framework ajuda muito. Logo fica evidente que essas ferramentas surgiram justamente para poupar tempo no longo prazo e facilitar a manutenção e atualização das aplicações. Como Django e Vue seguem estruturas padronizadas, quando você volta a trabalhar neles depois de um tempo, fica mais fácil entender o que foi feito e retomar o ritmo. E também é mais simples pegar um projeto de outra pessoa e entender as funções principais, já que a estrutura básica é familiar. 

Conceitos fundamentais de Django

Para quem está começando, a primeira coisa importante é saber que os projetos Django são criados rodando um comando que gera os arquivos e pastas base para iniciar o desenvolvimento. Essa estrutura inicial inclui alguns arquivos de configuração que se aplicam ao projeto inteiro. Os dois mais importantes e que você vai visitar com frequência são:

  • settings.py — onde ficam as configurações do projeto (se você perguntar “onde o Django configura o diretório de arquivos estáticos?”, a resposta está aqui)
  • urls.py — onde você registra as rotas de URL da aplicação.

Além desses arquivos no nível do projeto, você cria apps dentro dele, que são pastas onde fica o código de cada funcionalidade específica. Esses apps precisam ser registrados no settings.py. No meu projeto, o app principal se chama documents. Dentro dele, tenho:

  • models.py — onde defino meu objeto Document e seus campos. O Django se encarrega de criar a tabela correspondente no banco IRIS.
  • serializer.py — onde defino como converter o objeto para JSON e vice-versa. Para casos simples, isso é bem direto.
  • views.py — onde ficam as funções que recebem requisições HTTP e devolvem dados (pode ser uma resposta completa ou JSON, se for uma API).

O views.py é onde está a “graça” do Django: ele permite entregar páginas inteiras ou apenas JSON, de modo que você pode usar o Django tanto como front-end quanto apenas como back-end para um front separado.

No começo, seguir essas convenções pode parecer trabalhoso, mas logo você percebe que a aplicação simplesmente funciona, recebe as requisições e devolve os dados certos. Isso torna muito prazeroso continuar adicionando recursos. Depois que você cria um objeto, uma rota web e uma função para lidar com uma requisição, percebe como é fácil adicionar outra, e outra…

Meu projeto de exemplo

Eu fiz um fork do projeto Iris Django Template criado pelo @Guillaume Rongier no GitHub:
https://github.com/grongierisc/iris-django-template

Esse template contém apenas o Django e foi extremamente útil para eu aprender. A principal melhoria que adicionei foi integrar o Vue.js com Tailwind CSS, mostrando que dá para usar um framework moderno de JavaScript junto com Django e rodar uma Single Page Application (SPA) no IRIS. Uma SPA é uma aplicação JavaScript que faz requisições XHR para obter JSON e atualiza a página sem recarregar tudo — algo comum no desenvolvimento web moderno.

Convido você a olhar meu projeto não só como um exemplo de RAG e Vector Stores no IRIS, mas também como um template para usar Django, Vue.js e Tailwind CSS para criar aplicações web modernas, rápidas e flexíveis sobre o IRIS.
https://github.com/mindfulcoder49/iris-django-template

Fico à disposição para responder dúvidas ou compartilhar insights com quem quiser adaptar esse projeto para seu próprio uso.

Discussion (0)1
Log in or sign up to continue
Announcement
· Jun 5

The 4th InterSystems Ideas Contest

Hello Community,

We're thrilled to invite all our Developer Community members (both InterSystems employees and not) to participate in our next contest!

💡 The 4th InterSystems Ideas Contest 💡

We're looking for your innovative ideas to enhance InterSystems IRIS and related products and services. We encourage suggestions based on real-life use cases, highlighting the tangible benefits your idea will bring to other users and how it will enhance developers' experiences with InterSystems technology.

📅 Duration: June 9 - July 20, 2025

🏆 Prizes for the best ideas and a random draw!

🎁 Gifts for everyone: A special gift will be given to each author whose idea is accepted in the contest.

>> SUBMIT AN IDEA <<

Accepted ideas should:

  • be created during the Ideas Contest period by a user registered on the InterSystems Ideas portal (you can log in via InterSystems SSO);
  • not be part of other already existing ideas - only new ideas are allowed;
  • not describe the existing functionality of InterSystems IRIS and related Products or Services;
  • be posted in English;
  • be written by a person, not generated by AI;
  • be accepted as meaningful by InterSystems experts;
  • adhere to the structure below:
    • 1️⃣ Description of the idea
    • 2️⃣ Who is the target audience?
    • 3️⃣ What problem does it solve?
    • 4️⃣ How does this impact the efficiency, stability, reliability, etc, of the product?
    • 5️⃣ Provide a specific use case or scenario that illustrates how this idea could be used in practice.

All ideas are subject to moderation. We may request to clarify the submitted idea. Ideas that meet the requirements will receive a special "Ideas Contest" status.

Who can participate?

We invite EVERYONE to join our new Ideas Contest. Both InterSystems employees and non-employees are welcome to participate and submit their ideas. 

Prizes

1. Participation gift - authors of all accepted ideas will get:

🎁 Aluminum Media Stand

2. Expert award - InterSystems experts will select the best ideas. Winners will get:

🥇 1st place - Stilosa Barista Espresso Machine & Cappuccino Maker

🥈 2nd place - Osmo Mobile 7

🥉 3rd place -  Smart Mini Projector XGODY Gimbal 3

3. Random award - an idea chosen at random will get:

🏅 Smart Mini Projector XGODY Gimbal 3

Note: InterSystems employees are eligible to receive only the participation gift. Expert and Random awards can only be won by Developer Community members who are not InterSystems employees. 

Important dates:

⚠️ Idea Submission: June 9 - July 13

✅ Voting for ideas: July 14 - July 20

🎉 Winners announcement: July 21

Good luck! 🍀 


Note: All prizes are subject to availability and shipping options. Some items may not be available for international shipping to specific countries, in this case, an equivalent alternative will be provided. We will let you know if a prize is not available and offer a possible replacement. Prizes cannot be delivered to residents of Crimea, Russia, Belarus, Iran, North Korea, Syria, or other US-embargoed countries.

1 new Comment
Discussion (8)2
Log in or sign up to continue