aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ollama.tsx58
1 files changed, 18 insertions, 40 deletions
diff --git a/src/ollama.tsx b/src/ollama.tsx
index 2277f53..4931fda 100644
--- a/src/ollama.tsx
+++ b/src/ollama.tsx
@@ -105,10 +105,6 @@ export async function defineWord(word: string) {
export async function askWithContext(prompt: string) {
try {
const currentBlocksTree = await logseq.Editor.getCurrentPageBlocksTree()
- const currentBlock = currentBlocksTree[0]
- if (!currentBlock) {
- throw new Error("Block not found");
- }
let blocksContent = ""
for (const block of currentBlocksTree) {
blocksContent += await getTreeContent(block)
@@ -130,9 +126,7 @@ export async function summarize() {
for (const block of currentSelectedBlocks) {
blocksContent += block.content + "/n"
}
- if (lastBlock) {
- lastBlock = await logseq.Editor.insertBlock(lastBlock.uuid, '⌛ Summarizing Page....', { before: true })
- }
+ lastBlock = await logseq.Editor.insertBlock(lastBlock.uuid, '⌛ Summarizing Page....', { before: true })
const summary = await promptLLM(`Summarize the following ${blocksContent}`)
await logseq.Editor.updateBlock(lastBlock.uuid, `Summary: ${summary}`)
}
@@ -144,14 +138,11 @@ export async function summarize() {
export async function summarizeBlock() {
try {
+ // TODO: Get contnet of current block and subblocks
const currentBlock = await logseq.Editor.getCurrentBlock()
- if (currentBlock) {
- let summaryBlock = await logseq.Editor.insertBlock(currentBlock.uuid, `⌛Summarizing Block...`, { before: true })
- if (summaryBlock) {
- const summary = await promptLLM(`Summarize the following ${currentBlock.content}`);
- await logseq.Editor.updateBlock(summaryBlock.uuid, `Summary: ${summary}`)
- }
- }
+ let summaryBlock = await logseq.Editor.insertBlock(currentBlock!.uuid, `⌛Summarizing Block...`, { before: false })
+ const summary = await promptLLM(`Summarize the following ${currentBlock!.content}`);
+ await logseq.Editor.updateBlock(summaryBlock!.uuid, `Summary: ${summary}`)
} catch (e: any) {
logseq.App.showMsg(e.toString(), 'warning')
console.error(e)
@@ -162,17 +153,14 @@ export async function askAI(prompt: string, context: string) {
await delay(300)
try {
const currentBlock = await logseq.Editor.getCurrentBlock()
- if (currentBlock) {
- const block = await logseq.Editor.insertBlock(currentBlock.uuid, 'Generating....', { before: true })
- let response = "";
- if (context == "") {
- response = await promptLLM(prompt)
- } else {
- response = await promptLLM(`With the context of: ${context}, ${prompt}`)
- }
- await logseq.Editor.updateBlock(block!.uuid, `${prompt}\n${response}`)
+ const block = await logseq.Editor.insertBlock(currentBlock!.uuid, 'Generating....', { before: true })
+ let response = "";
+ if (context == "") {
+ response = await promptLLM(prompt)
+ } else {
+ response = await promptLLM(`With the context of: ${context}, ${prompt}`)
}
-
+ await logseq.Editor.updateBlock(block!.uuid, `${prompt}\n${response}`)
} catch (e: any) {
logseq.App.showMsg(e.toString(), 'warning')
console.error(e)
@@ -182,13 +170,9 @@ export async function askAI(prompt: string, context: string) {
export async function summarizeBlockFromEvent(b: IHookEvent) {
try {
const currentBlock = await logseq.Editor.getBlock(b.uuid)
- if (currentBlock) {
- let summaryBlock = await logseq.Editor.insertBlock(currentBlock.uuid, `⌛Summarizing Block...`, { before: true })
- if (summaryBlock) {
- const summary = await promptLLM(`Summarize the following ${currentBlock.content}`);
- await logseq.Editor.updateBlock(summaryBlock.uuid, `Summary: ${summary}`)
- }
- }
+ let summaryBlock = await logseq.Editor.insertBlock(currentBlock!.uuid, `⌛Summarizing Block...`, { before: true })
+ const summary = await promptLLM(`Summarize the following ${currentBlock!.content}`);
+ await logseq.Editor.updateBlock(summaryBlock!.uuid, `Summary: ${summary}`)
} catch (e: any) {
logseq.App.showMsg(e.toString(), 'warning')
console.error(e)
@@ -215,18 +199,12 @@ export async function convertToFlashCardCurrentBlock() {
export async function convertToFlashCard(uuid: string, blockContent: string) {
try {
const questionBlock = await logseq.Editor.insertBlock(uuid, "Genearting question....", { before: false })
- if (!questionBlock) {
- throw new Error("Block not found");
- }
- const answerBlock = await logseq.Editor.insertBlock(questionBlock.uuid, "Genearting answer....", { before: false })
- if (!answerBlock) {
- throw new Error("Block not found");
- }
+ const answerBlock = await logseq.Editor.insertBlock(questionBlock!.uuid, "Genearting answer....", { before: false })
const question = await promptLLM(`Create a question about this that would fit in a flashcard:\n ${blockContent}`)
const answer = await promptLLM(`Given the question ${question} and the context of ${blockContent} What is the answer? be as brief as possible and provide the answer only.`)
- await logseq.Editor.updateBlock(questionBlock.uuid, `${question} #card`)
+ await logseq.Editor.updateBlock(questionBlock!.uuid, `${question} #card`)
await delay(300)
- await logseq.Editor.updateBlock(answerBlock.uuid, answer)
+ await logseq.Editor.updateBlock(answerBlock!.uuid, answer)
} catch (e: any) {
logseq.App.showMsg(e.toString(), 'warning')
console.error(e)