Skip to content

Commit

Permalink
Merge pull request #164 from Vandivier/153-custom-gpt
Browse files Browse the repository at this point in the history
feat: Custom GPT πŸŽ‰πŸŽ‰
  • Loading branch information
Vandivier authored Jan 30, 2024
2 parents cf1e7a0 + f10173d commit ca71bfc
Show file tree
Hide file tree
Showing 207 changed files with 18,409 additions and 2,391 deletions.
152 changes: 152 additions & 0 deletions docs/CUSTOM_GPT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
# CUSTOM_GPT

This document includes the name, description, and instructions used to create the Ladderly Custom GPT, accessible in the Open AI [GPT Store](https://openai.com/blog/introducing-the-gpt-store).

## Name

Ladderly Custom GPT

## Description

a tool to help you learn to code and land your first or next programming role

## Instructions

I encapsulate the knowledge held on https://ladderly.io and its open-source sources including:

1. https://github.com/Vandivier/ladderly-slides/blob/main/CURRICULUM.md
2. https://github.com/Vandivier/ladderly-3
3. https://www.youtube.com/playlist?list=PL4hsXTgWARMzs0dWr8YGLZpFuSZNMscoy
4. https://www.youtube.com/playlist?list=PL4hsXTgWARMzFezKkj7vGJKmtX0ugC49t

## Conversation Starters

1. How can I learn to code?
2. What language is best when learning to code?
3. How can I identify a high-quality coding bootcamp?
4. What sort of projects should I include in my portfolio?
5. After I learn to code, how do I obtain a job?

## Knowledge

attach `ladderly-3/scripts/youtube-transcriber/consolidated_transcript.txt`

## Capabilities

Enable:

1. Web Browsing
2. Dall-E
3. Code Interpreter

## Actions

```yml
openapi: 3.0.0
info:
title: Aria's Tale Art and Image API
description: API for searching, retrieving random images, and accessing art rolls in Aria's Tale gallery.
version: 1.0.0
servers:
- url: https://www.ariastale.com/api/trpc
description: Aria's Tale API server
paths:
/image.getImages:
get:
operationId: getImages
summary: Search for images in Aria's Tale gallery.
parameters:
- name: batch
in: query
required: true
description: Batch number for the search query
schema:
type: integer
- name: input
in: query
required: true
description: JSON string containing the search filter
schema:
type: string
responses:
"200":
description: Successful response with image data
content:
application/json:
schema:
type: object
properties:
images:
type: array
items:
type: object
properties:
id:
type: string
url:
type: string
title:
type: string
description:
type: string
/image.getRandomImage:
get:
operationId: getRandomImage
summary: Retrieve a random image from the gallery.
responses:
"200":
description: Successful response with a random image
content:
application/json:
schema:
type: object
properties:
id:
type: string
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
description:
type: string
imageFileName:
type: string
title:
type: string
/art.getArtRoll:
get:
operationId: getArtRoll
summary: Retrieve a selection of art pieces.
parameters:
- name: batch
in: query
required: true
description: Batch number for the art roll query
schema:
type: integer
- name: input
in: query
required: true
description: JSON string for additional query parameters
schema:
type: string
responses:
"200":
description: Successful response with art roll data
content:
application/json:
schema:
type: object
properties:
artRoll:
type: array
items:
type: object
properties:
subject:
type: string
style:
type: string
```
24 changes: 22 additions & 2 deletions scripts/youtube-transcriber/consolidate.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,32 @@ class VideoData(TypedDict):
output_file = "consolidated_transcript.txt"


def replace_smart_quotes(s):
def replace_smart_quotes(s: str):
s = s.replace("\u2018", "'").replace("\u2019", "'")
s = s.replace("\u201c", '"').replace("\u201d", '"')
return s


def wrangle_transcript(transcript: str):
replacements = {
"\u2018": "'",
"\u2019": "'",
"laterally": "Ladderly",
"latterly": "Ladderly",
"latly": "Ladderly",
"doio": "dot io",
"arya tale": "Aria's Tale",
"arus tale": "Aria's Tale",
"arya": "aria",
}

result = transcript.lower()
for old, new in replacements.items():
result = result.replace(old, new)

return result


def remove_hashtags(title):
return " ".join(word for word in title.split() if not word.startswith("#"))

Expand Down Expand Up @@ -75,7 +95,7 @@ def main():
)
)
out_f.write("Transcript:\n")
out_f.write(replace_smart_quotes(transcript + "\n"))
out_f.write(wrangle_transcript(transcript + "\n"))

print(f"Consolidated transcript written to {output_file}")

Expand Down
Loading

0 comments on commit ca71bfc

Please sign in to comment.