Skip to content

Instantly share code, notes, and snippets.

View czue's full-sized avatar

Cory Zue czue

View GitHub Profile
@czue
czue / chatgpt-channels.patch
Created April 9, 2024 06:33
Patch for a streaming ChatGPT app with Django, Channels, and HTMX
diff --git a/apps/chat/consumers.py b/apps/chat/consumers.py
index cf792d9e..a4963491 100644
--- a/apps/chat/consumers.py
+++ b/apps/chat/consumers.py
@@ -1,4 +1,5 @@
import json
+import uuid
from channels.generic.websocket import WebsocketConsumer
from django.conf import settings
@czue
czue / langchain_qa_chatgpt_bot.py
Last active April 3, 2024 13:57
sample code for chatgpt / gpt4 langchain Q&A
# see https://www.youtube.com/watch?v=CsFpVdgEXCU for details of what this does
from typing import List
from langchain import ConversationChain
from langchain.chat_models import ChatOpenAI
from langchain.indexes.vectorstore import VectorStoreIndexWrapper
from langchain.memory import ConversationBufferMemory
from langchain.prompts import (
ChatPromptTemplate,
@czue
czue / llm_translator.py
Created April 2, 2024 07:20
Translations with OpenAI
# this is the core translation code from https://www.youtube.com/watch?v=2ItlnKhe37U
# It uses the OpenAI API to translate messages from one language to another.
import dataclasses
from typing import List
from django.conf import settings
from openai import OpenAI
from apps.translations.models import InputText, Language
@czue
czue / function.js
Created August 25, 2023 16:45
OpenAI function for Source Citations in a RAG architecture
{
"name": "answer_and_sources",
"description": "Gets an answer and cites the relevant sources used to provide the answer.",
"parameters": {
"type": "object",
"properties": {
"answer": {
"type": "string",
"description": "The answer to the user's question.",
},
@czue
czue / json_tags.py
Last active December 15, 2023 21:41
A simple django template tag that lets you automatically render json from a python object
"""
Usage:
{% load json_tags %}
var = myJsObject = {{ template_var|to_json }};
Features:
- Built in support for dates, datetimes, lazy translations.
@czue
czue / json_cleaner.py
Created September 21, 2023 11:25
OpenAI JSON Cleaner
def clean_and_parse_json_with_ai(json_string: str, openai_key: str):
clean_json_fn = {
"name": "clean_json",
"description": "Cleans JSON.",
"parameters": {
"type": "object",
"properties": {
"clean_json": {
"type": "string",
"description": "The cleaned JSON.",
/*
The below work is licensed under Creative Commons GNU LGPL License.
Original work:
License: http://creativecommons.org/licenses/LGPL/2.1/
Author: Stefan Goessner/2006
Web: http://goessner.net/
Modifications made:
@czue
czue / subscription.py
Created December 17, 2020 06:42
subscriptions
{% extends "portal_base.html" %}
{% load staticfiles %}
{% block title %} Payment {% endblock %}
{% block content %}
<div class="dashboard-interactions">
<div class="interactions-wrap full-width">
<div class="interactions-panel">
@czue
czue / ratatat-el-pico.rb
Created January 3, 2020 10:57
SonicPi code for the first few bars of Ratatat's El Pico
use_bpm 95
# main guitar riff
mini_riff_1 = [:b4, :e4, :g4, :b4]
mini_riff_2 = [:g4, :b3, :e4, :g4]
mini_riff_3 = [:a4, :c4, :gb4, :a4]
mini_riff_4 = [:gb4, :b3, :d4, :gb4]
mini_riff_5 = [:c5, :gb4, :a4, :c5]
@czue
czue / hq-todos.txt
Created November 14, 2017 07:18
HQ TODOs (with blame)
corehq/apps/accounting/bootstrap/utils.py ::
corehq/apps/accounting/forms.py ::
corehq/apps/accounting/models.py ::
corehq/apps/accounting/payment_handlers.py ::
corehq/apps/accounting/static/accounting/js/invoices.js ::
15a3bebbd8c (Daniel Roberts 2016-06-29 17:51:44 -0400 12) // todo: use a more specific identifier to make less brittle
corehq/apps/accounting/subscription_changes.py ::
corehq/apps/accounting/tests/test_invoicing.py ::
corehq/apps/analytics/ab_tests.py ::
f35a49c480f (Biyeun Buczyk 2016-07-06 18:12:26 -0400 29) version = random.sample(self.options, 1)[0] # todo weighted options