Skip to content

Commit

Permalink
fix: ollama custom client
Browse files Browse the repository at this point in the history
  • Loading branch information
longy2k committed May 24, 2024
1 parent d22eff4 commit 2191057
Show file tree
Hide file tree
Showing 8 changed files with 19 additions and 27 deletions.
2 changes: 1 addition & 1 deletion manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"id": "bmo-chatbot",
"name": "BMO Chatbot",
"version": "2.1.0",
"version": "2.1.1",
"minAppVersion": "1.0.0",
"description": "Generate and brainstorm ideas while creating your notes using Large Language Models (LLMs) from Ollama, LM Studio, Anthropic, OpenAI, Mistral AI, and more for Obsidian.",
"author": "Longy2k",
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "bmo-chatbot",
"version": "2.1.0",
"version": "2.1.1",
"description": "Generate and brainstorm ideas while creating your notes using Large Language Models (LLMs) from Ollama, LM Studio, Anthropic, OpenAI, Mistral AI, and more for Obsidian.",
"main": "main.js",
"scripts": {
Expand Down
4 changes: 2 additions & 2 deletions src/components/FetchModelEditor.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { requestUrl } from 'obsidian';
import { BMOSettings } from 'src/main';
import ollama from 'ollama';
import { Ollama } from 'ollama';
import OpenAI from 'openai';

// Request response from Ollama
Expand Down Expand Up @@ -35,7 +35,7 @@ export async function fetchOllamaResponseEditor(settings: BMOSettings, selection
}

try {

const ollama = new Ollama({host: ollamaRESTAPIURL});
const response = await ollama.generate({
model: settings.general.model,
system: settings.editor.prompt_select_generate_system_role,
Expand Down
15 changes: 2 additions & 13 deletions src/components/FetchModelList.ts
Original file line number Diff line number Diff line change
@@ -1,26 +1,15 @@
import { requestUrl } from 'obsidian';
import ollama from 'ollama'
import { Ollama } from 'ollama'
import OpenAI from 'openai';
import BMOGPT from 'src/main';
import { OPENAI_MODELS } from 'src/view';

export async function fetchOllamaModels(plugin: BMOGPT) {
const ollamaRESTAPIURL = plugin.settings.OllamaConnection.RESTAPIURL;

// Check if the URL is functional
try {
const response = await fetch(ollamaRESTAPIURL);
if (!response.ok) {
console.error('OLLAMA URL is not responding:', ollamaRESTAPIURL);
return;
}
} catch (error) {
console.error('Error reaching OLLAMA URL:', error);
return;
}

// Log the list of models using ollama.list()
try {
const ollama = new Ollama({host: ollamaRESTAPIURL});
const modelsList = await ollama.list();
// console.log('Ollama Models:', modelsList);

Expand Down
4 changes: 3 additions & 1 deletion src/components/FetchModelResponse.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { ChatCompletionMessageParam } from 'openai/resources/chat';
import { addMessage, addParagraphBreaks, updateUnresolvedInternalLinks } from './chat/Message';
import { displayErrorBotMessage, displayLoadingBotMessage } from './chat/BotMessage';
import { getActiveFileContent, getCurrentNoteContent } from './editor/ReferenceCurrentNote';
import ollama from 'ollama';
import { Ollama } from 'ollama';
import OpenAI from 'openai';
import { getPrompt } from './chat/Prompt';

Expand Down Expand Up @@ -37,6 +37,7 @@ export async function fetchOllamaResponse(plugin: BMOGPT, settings: BMOSettings,
const referenceCurrentNoteContent = getCurrentNoteContent();

try {
const ollama = new Ollama({ host: ollamaRESTAPIURL});
const response = await ollama.chat({
model: settings.general.model,
messages: [
Expand Down Expand Up @@ -145,6 +146,7 @@ export async function fetchOllamaResponseStream(plugin: BMOGPT, settings: BMOSet
});

try {
const ollama = new Ollama({ host: ollamaRESTAPIURL});
const response = await ollama.chat({
model: settings.general.model,
messages: [
Expand Down
12 changes: 6 additions & 6 deletions src/components/chat/Commands.ts
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ export function commandHelp(plugin: BMOGPT, settings: BMOSettings) {

const generalCommandHeader = document.createElement('h4');
generalCommandHeader.textContent = 'General Commands';
generalCommandHeader.style.textAlign = 'center';
generalCommandHeader.style.textAlign = 'left';
displayCommandBotMessageDiv.appendChild(generalCommandHeader);

const commandClearP = document.createElement('p');
Expand All @@ -135,7 +135,7 @@ export function commandHelp(plugin: BMOGPT, settings: BMOSettings) {

const profileCommandHeader = document.createElement('h4');
profileCommandHeader.textContent = 'Profile Commands';
profileCommandHeader.style.textAlign = 'center';
profileCommandHeader.style.textAlign = 'left';
displayCommandBotMessageDiv.appendChild(profileCommandHeader);

const commandProfileListP = document.createElement('p');
Expand All @@ -148,7 +148,7 @@ export function commandHelp(plugin: BMOGPT, settings: BMOSettings) {

const modelCommandHeader = document.createElement('h4');
modelCommandHeader.textContent = 'Model Commands';
modelCommandHeader.style.textAlign = 'center';
modelCommandHeader.style.textAlign = 'left';
displayCommandBotMessageDiv.appendChild(modelCommandHeader);

const commandModelListP = document.createElement('p');
Expand All @@ -161,7 +161,7 @@ export function commandHelp(plugin: BMOGPT, settings: BMOSettings) {

const promptCommandHeader = document.createElement('h4');
promptCommandHeader.textContent = 'Prompt Commands';
promptCommandHeader.style.textAlign = 'center';
promptCommandHeader.style.textAlign = 'left';
displayCommandBotMessageDiv.appendChild(promptCommandHeader);

const commandPromptListP = document.createElement('p');
Expand All @@ -178,7 +178,7 @@ export function commandHelp(plugin: BMOGPT, settings: BMOSettings) {

const editorCommandHeader = document.createElement('h4');
editorCommandHeader.textContent = 'Editor Commands';
editorCommandHeader.style.textAlign = 'center';
editorCommandHeader.style.textAlign = 'left';
displayCommandBotMessageDiv.appendChild(editorCommandHeader);

const commandAppendP = document.createElement('p');
Expand All @@ -191,7 +191,7 @@ export function commandHelp(plugin: BMOGPT, settings: BMOSettings) {

const streamCommandHeader = document.createElement('h4');
streamCommandHeader.textContent = 'Stream Commands';
streamCommandHeader.style.textAlign = 'center';
streamCommandHeader.style.textAlign = 'left';
displayCommandBotMessageDiv.appendChild(streamCommandHeader);

const commandStopP = document.createElement('p');
Expand Down
3 changes: 2 additions & 1 deletion src/components/editor/FetchRenameNoteTitle.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Notice, requestUrl } from 'obsidian';
import ollama from 'ollama';
import { Ollama } from 'ollama';
import OpenAI from 'openai';
import { BMOSettings } from 'src/main';
import { ANTHROPIC_MODELS, OPENAI_MODELS } from 'src/view';
Expand All @@ -14,6 +14,7 @@ export async function fetchModelRenameTitle(settings: BMOSettings, referenceCurr
try {
if (settings.OllamaConnection.RESTAPIURL && settings.OllamaConnection.ollamaModels.includes(settings.general.model)) {
try {
const ollama = new Ollama({ host: settings.OllamaConnection.RESTAPIURL});
const response = await ollama.generate({
model: settings.general.model,
system: prompt,
Expand Down

0 comments on commit 2191057

Please sign in to comment.