Pesquisar

Announcement
· Apr 9

Perguntas-Chave do Mês: Março de 2025

Olá Comunidade, 

É hora do novo lote de #Perguntas-Chave do mês anterior.

 

Aqui estão as principais perguntas de março escolhidas pelos especialistas da InterSystems em todas as comunidades:

📌 Message Count por @Farman Ullah (EN)

📌 Walking a virtual document's structure por @Colin Brough (EN)

Essas perguntas serão destacadas com a tag #Pergunta Principal e seus autores receberão o emblema de Key Question no Global Masters.

Se você achar a(s) pergunta(s)-chave de outras comunidades interessante(s), deixe-nos uma mensagem nos comentários e traduziremos a(s) pergunta(s) e a(s) resposta(s) aceita(s).

Parabéns e obrigado a todos pelas perguntas interessantes. Continuem enviando!

Vejo vocês no mês que vem 😉

Discussion (0)1
Log in or sign up to continue
Article
· Apr 9 3m read

Vous rencontrez des difficultés pour connecter votre Visual Studio Code à votre instance IRIS via WebGateway ? Voici quelques conseils !

Comme vous le savez peut-être, le serveur web privé fourni avec chaque installation IRIS a été supprimé, rendant nécessaire l'utilisation d'un serveur web externe.

Pour les déploiements Docker, il est courant d'utiliser l'image de passerelle web (disponible ici) avec l'image IRIS pour accéder facilement au Portail de Gestion. Cette image peut être configurée pour un accès via HTTPS sans problème en configurant les certificats.

Problème 1 : Impossible de vérifier le premier certificat

Votre connexion SSL via la Web Gateway peut disposer d'un certificat auto-signé configuré, et Visual Studio Code tente de le vérifier. Supprimons cette vérification :

En accédant au menu Settings et en recherchant http, vous trouverez l'option Proxy Strict SSL. Décochez-la pour l'empêcher de tenter de valider le certificat. Dans Proxy Support, sélectionnez Off.

Problème 2 : application Web /api/atelier introuvable

Vous vous demandez peut-être ce qu'est Atelier… Eh bien, c'est très simple : c'était l'ancien environnement de développement InterSystems basé sur Eclipse, devenu un peu un « héritage » dans la configuration IRIS.

Ce problème ne devrait pas être très courant, mais il est dû à la désactivation de l'application web /api/atelier. Pour ce faire, accédez directement au portail de gestion et recherchez l'écran d'administration de l'application web. Dans le menu Administration > Sécurité > Applications > Applications web, recherchez /api/atelier.

En effet, l'application n'est pas activée. Pour modifier cela, accédez à ses paramètres en cliquant sur sa nom, puis sélectionnez « Enable Application ».

Avec cette activation, le problème devrait être résolu.

Problème 3 : Serveur indisponible

Après avoir tout configuré, le serveur n'est toujours pas accessible, affichant un message comme celui-ci :

Il est fort probable que la Web Gateway ait configuré CSPSystems comme utilisateur d'accès à votre instance IRIS, qui s'affiche par défaut sous le nom LOCAL. Pour accéder à la console de la Web Gateway, vous pouvez le faire depuis le pPortail de Gestion (Administration > Configuration > Web Gateway Management) ou directement via l'URL (https://WEBGATEWAY_IP:WEBGATEWAY_PORT/csp/bin/Systems/Module.cxw). N'oubliez pas que l'utilisateur d'accès est CSPSystem (avec le mot de passe spécifié lors de l'installation).

Le premier écran affiché est le suivant :

 

À partir de là, nous devons accéder à Server Access qui vous montrera l'écran suivant :

Comme vous pouvez le constater, nous n'avons configuré qu'un seul serveur, nommé LOCAL, qui nous permet d'accéder directement au Portail de Gestion (dans mon cas, via l'URL https://localhost/csp/sys/%25CSP.Portal.Home.zen). Voyons la configuration :

En effet, l'utilisateur configuré est CSPSystem et notre configuration Visual Studio Code utilise le superutilisateur pour accéder, modifions la configuration pour utiliser le superuser et voyons ce qui se passe :

Bingo ! Problème résolu. Nous sommes maintenant connectés à notre IRIS depuis la passerelle Web de Visual Studio Code.

J'espère que cela vous sera utile.

Discussion (0)1
Log in or sign up to continue
Announcement
· Apr 9

Sua pergunta é uma #Pergunta-chave?

Olá, Desenvolvedores!

Estamos introduzindo um novo recurso no site da Dev Community – Perguntas-chave por Desenvolvedores da InterSystems.

Adicionamos uma nova tag especial #Pergunta Chave para destacar perguntas relacionadas às Plataformas de Dados da InterSystems consideradas como tendo o maior impacto.

A cada mês, os especialistas da InterSystems escolherão essas perguntas, e esses autores serão premiados com todas as honras!

Quais honrarias? Detalhes neste post!

O que é #Pergunta Chave? 

É a tag que destaca questões sobre como desenvolver, testar, implantar, gerenciar, etc. soluções que usam as Plataformas de Dados InterSystems, consideradas as mais esclarecedoras, interessantes, intrigantes, importantes e assim por diante.

Quem toma a decisão? 

Os Especialistas da InterSystems analisarão as perguntas da CD e decidirão se devem considerá-las como Perguntas-chave.

Quais questões serão revisadas?

Todas as perguntas na CD serão levadas em consideração.

Com que frequência você verá novas Perguntas-Chave na CD?

A cada mês, nossos especialistas escolherão as perguntas que receberão a tag #Pergunta-chave.

Que honrarias você receberá?

Um novo emblema especial no Global Masters chamado "Pergunta-Chave".

Um destaque especial na Comunidade de Desenvolvedores: adicionaremos um comentário em um tópico com a pergunta de @Developer Community Admin que foi selecionada como Pergunta-Chave.


Faça suas perguntas, aproveite os pontos em dobro durante o Inquisitive Summer na Developer Community e talvez sua pergunta seja escolhida por nossos especialistas como a próxima Pergunta-Chave!

Inscreva-se para a tag e fique ligado! 

Discussion (0)1
Log in or sign up to continue
Question
· Apr 9

Language selection drop down from Clinical viewer 2023 Navigation App

I need to remove multiple languages from the language selection drop down which appears at top of Navigation app top bar. I need to keep only English.

Is there any way I can do that?

Or I can completly remove the language option?

4 Comments
Discussion (4)2
Log in or sign up to continue
Article
· Apr 9 4m read

Haz preguntas a tus clases de IRIS con Ollama, IRIS VectorDB y Langchain

Si queréis saber por ejemplo si ya está implementada una clase sobre un tema en concreto, ahora es posible haciendo una simple pregunta en lenguaje natural. Descargad y ejecutad la aplicación https://openexchange.intersystems.com/package/langchain-iris-tool para conocer todo sobre vuestras clases de proyecto en un chat.

Instalación:

$ git clone https://github.com/yurimarx/langchain-iris-tool.git
$ docker-compose build
$ docker-compose up -d

Uso:

1. Abrid la URL [http://localhost:8501](http://localhost:8501).  

2. Revisad el botón de Configuración, que se usa para que el Agente se conecte a InterSystems IRIS.  

3. Haced preguntas sobre vuestras clases desarrolladas (por ejemplo: ¿Existen clases que hereden de Persistent?).

UI 4

Herramientas usadas:

  1. Ollama: herramienta para ejecutar modelos (LLM) 
  2. Langchain: plataforma para construir agentes de inteligencia artificial.
  3. Streamlit: framework de frontend.
  4. InterSystems IRIS: servidor para responder preguntas sobre su contenido.

Sobre Ollama

Es una solución gratuita y local de modelos de lenguaje (LLM) que permite ejecutar Inteligencia Artificial Generativa con privacidad y seguridad, ya que los datos se procesarán únicamente en vuestras propias instalaciones. El proyecto Ollama es compatible con muchos modelos, incluyendo Mistral, OpenAI, DeepSeek y otros, ejecutándolos localmente. Este paquete utiliza Ollama a través de Docker Compose con el modelo Mistral.

ollama:
    image: ollama/ollama:latest
    deploy:
      resources:
        reservations:
          devices:
          - driver: nvidia
            capabilities: ["gpu"]
            count: all  # Adjust count for the number of GPUs you want to use
    ports:
      - 11434:11434
    volumes:
      - ./model_files:/model_files
      - .:/code
      - ./ollama:/root/.ollama
    container_name: ollama_iris
    pull_policy: always
    tty: true
    entrypoint: ["/bin/sh", "/model_files/run_ollama.sh"] # Loading the finetuned Mistral with the GGUF file
    restart: always
    environment:
      - OLLAMA_KEEP_ALIVE=24h
      - OLLAMA_HOST=0.0.0.0

Sobre Langchain:

Langchain es un framework para crear aplicaciones de Inteligencia Artificial Generativa (GenAI) de forma sencilla. Langchain introduce el concepto de herramienta (tool), que son complementos (plug-ins) utilizados en aplicaciones RAG para ampliar las capacidades de los modelos de lenguaje (LLMs). Esta aplicación implementa una herramienta de Langchain para realizar preguntas sobre gestión y desarrollo en vuestro servidor IRIS.

from langchain.llms import Ollama
from langchain.chains import RetrievalQA
from langchain.document_loaders import CSVLoader
from langchain.embeddings import OllamaEmbeddings
from langchain_iris import IRISVector

def get_insights(question, csv_file, iris_conn, collection_name):
    
    # Load and process the CSV data    
    loader = CSVLoader(csv_file)
    documents = loader.load()

    llm = Ollama(
        base_url="http://ollama:11434", 
        model="mistral", 
        temperature=0,
    )

    # Create embeddings
    embeddings = OllamaEmbeddings(model="mistral", base_url="http://ollama:11434", temperature=0)

    db = IRISVector.from_documents(
        embedding=embeddings, 
        documents=documents,
        connection_string=iris_conn,
        collection_name=collection_name,
        pre_delete_collection=True
    )

    qa = RetrievalQA.from_chain_type(
        llm=llm,
        chain_type="stuff",
        retriever=db.as_retriever())
    
    return qa({"query": question})

Sobre Streamlit:

La solución Streamlit se utiliza para desarrollar frontends con el lenguaje Python. Esta aplicación incluye una aplicación de chat en Streamlit para interactuar con Ollama, Langchain e IRIS y obtener respuestas relevantes.

import pandas as pd
import streamlit as st
from sqlalchemy import create_engine
import langchain_helper as lch

username = "_system"
password = "SYS"
hostname = "iris"
port = 51972
webport = 52773
namespace = "USER"
st.set_page_config(page_title="InterSystems IRIS Classes Demo", page_icon="📜")

st.title("Langchain IRIS Classes Chat")

with st.popover("Settings"):
    with st.spinner(text="Connecting to the IRIS classes"):
        engine = create_engine("iris://" + username + ":" + password + "@" + hostname + ":" + str(port) + "/" + namespace)
        connection  = engine.connect()
        query = 'select * from %Dictionary.ClassDefinition where substring(ID,1,1) <> \'%\' and  Copyright is null'
        df = pd.read_sql(query, con=connection)
        df.to_csv("classes.csv")
    
    username = st.text_input("Username:", username)
    password = st.text_input("Password:", password)
    hostname = st.text_input("Hostname:", hostname)
    port = int(st.text_input("Port:", port))
    webport = int(st.text_input("Web port:", webport))
    namespace = st.text_input("Namespace:", namespace)

            

# User query input
query = st.text_input(label="Enter your query")

# Submit button
if st.button(label="Ask IRIS Classes", type="primary"):
    
    with st.spinner(text="Generating response"):
        iris_conn_str = f"iris://{username}:{password}@{hostname}:{port}/{namespace}"
        response = lch.get_insights(query, "classes.csv", iris_conn=iris_conn_str, collection_name="classes")
        st.write(response['result'])
Discussion (0)1
Log in or sign up to continue