Skip to content

Commit

Permalink
improved script
Browse files Browse the repository at this point in the history
  • Loading branch information
bracesproul committed Nov 6, 2023
1 parent 59b327c commit 0074d89
Show file tree
Hide file tree
Showing 9 changed files with 377 additions and 298 deletions.
46 changes: 46 additions & 0 deletions .github/workflows/api-docs-preview.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Deploy API Docs Preview

on:
push:
paths:
- 'langchain/**'
pull_request:
paths:
- 'langchain/**'
workflow_dispatch: # Allows triggering the workflow manually in GitHub UI

# If another push to the same PR or branch happens while this workflow is still running,
# cancel the earlier run in favor of the next run.
#
# There's no point in testing an outdated version of the code. GitHub only allows
# a limited number of job runners to be active at the same time, so it's better to cancel
# pointless jobs early so that more useful jobs can run sooner.
concurrency:
group: exports-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
deploy-api-docs-preview:
name: Deploy Preview API Docs to Vercel
runs-on: ubuntu-latest
environment: Staging
env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_API_DOCS_PROJECT_ID }}
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
PR_URL: ${{ github.event.pull_request.html_url }}
GITHUB_TOKEN: ${{ secrets.PR_COMMENT_GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v4
- name: Install Vercel CLI
run: npm install --global vercel@latest
- name: Change to api-docs directory
run: cd api-docs
- name: Pull Vercel Environment Information
run: vercel pull --yes --environment=preview --token="$VERCEL_TOKEN"
- name: Build Project Artifacts
run: vercel build --token="$VERCEL_TOKEN"
- name: Deploy Project Artifacts to Vercel
run: vercel deploy --prebuilt --token="$VERCEL_TOKEN" > deployment-url.txt
- name: Post Preview URL Comment
run: gh pr comment "$PR_URL" -F deployment-url.txt
43 changes: 43 additions & 0 deletions .github/workflows/api-docs-prod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Deploy API Docs Prod

on:
push:
paths:
- 'langchain/**'
branches: ["main"]
pull_request:
paths:
- 'langchain/**'
workflow_dispatch: # Allows triggering the workflow manually in GitHub UI

# If another push to the same PR or branch happens while this workflow is still running,
# cancel the earlier run in favor of the next run.
#
# There's no point in testing an outdated version of the code. GitHub only allows
# a limited number of job runners to be active at the same time, so it's better to cancel
# pointless jobs early so that more useful jobs can run sooner.
concurrency:
group: exports-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
deploy-api-docs-prod:
name: Deploy Prod API Docs to Vercel
runs-on: ubuntu-latest
environment: Production
env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_API_DOCS_PROJECT_ID }}
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
steps:
- uses: actions/checkout@v4
- name: Install Vercel CLI
run: npm install --global vercel@latest
- name: Change to api-docs directory
run: cd api-docs
- name: Pull Vercel Environment Information
run: vercel pull --yes --environment=production --token="$VERCEL_TOKEN"
- name: Build Project Artifacts
run: vercel build --prod --token="$VERCEL_TOKEN"
- name: Deploy Project Artifacts to Vercel
run: vercel deploy --prebuilt --prod --token="$VERCEL_TOKEN"
10 changes: 1 addition & 9 deletions api-docs/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,4 @@ yarn-error.log*
next-env.d.ts

# Autogenerated docs
/public/assets
/public/classes
/public/functions
/public/interfaces
/public/modules
/public/types
/public/variables
/public/index.html
/public/.nojekyll
/public/*
2 changes: 1 addition & 1 deletion api-docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"private": true,
"scripts": {
"dev": "next dev",
"gen:typedoc": "npx typedoc --tsconfig ../langchain/tsconfig.json --out ./public",
"gen:typedoc": "npx typedoc --options typedoc.json",
"build": "yarn gen:typedoc && next build",
"start": "next start",
"lint": "next lint"
Expand Down
278 changes: 278 additions & 0 deletions api-docs/typedoc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,278 @@
{
"$schema": "https://typedoc.org/schema.json",
"out": "public",
"sort": [
"kind",
"visibility",
"instance-first",
"required-first",
"alphabetical"
],
"tsconfig": "../langchain/tsconfig.json",
"excludePrivate": true,
"excludeInternal": true,
"excludeExternals": true,
"excludeNotDocumented": false,
"includeVersion": true,
"sourceLinkTemplate": "https://github.com/langchain-ai/langchainjs/blob/{gitRevision}/{path}#L{line}",
"entryPoints": [
"../langchain/src/load/index.ts",
"../langchain/src/load/serializable.ts",
"../langchain/src/agents/index.ts",
"../langchain/src/agents/load.ts",
"../langchain/src/agents/toolkits/index.ts",
"../langchain/src/agents/toolkits/aws_sfn.ts",
"../langchain/src/agents/toolkits/sql/index.ts",
"../langchain/src/agents/format_scratchpad/openai_functions.ts",
"../langchain/src/agents/format_scratchpad/log.ts",
"../langchain/src/agents/format_scratchpad/xml.ts",
"../langchain/src/agents/format_scratchpad/log_to_message.ts",
"../langchain/src/agents/react/output_parser.ts",
"../langchain/src/agents/xml/output_parser.ts",
"../langchain/src/agents/openai/output_parser.ts",
"../langchain/src/base_language/index.ts",
"../langchain/src/tools/index.ts",
"../langchain/src/tools/aws_lambda.ts",
"../langchain/src/tools/aws_sfn.ts",
"../langchain/src/tools/calculator.ts",
"../langchain/src/tools/render.ts",
"../langchain/src/tools/sql.ts",
"../langchain/src/tools/webbrowser.ts",
"../langchain/src/tools/google_calendar/index.ts",
"../langchain/src/chains/index.ts",
"../langchain/src/chains/combine_documents/reduce.ts",
"../langchain/src/chains/load.ts",
"../langchain/src/chains/openai_functions/index.ts",
"../langchain/src/chains/query_constructor/index.ts",
"../langchain/src/chains/query_constructor/ir.ts",
"../langchain/src/chains/sql_db/index.ts",
"../langchain/src/chains/graph_qa/cypher.ts",
"../langchain/src/embeddings/base.ts",
"../langchain/src/embeddings/bedrock.ts",
"../langchain/src/embeddings/cache_backed.ts",
"../langchain/src/embeddings/cloudflare_workersai.ts",
"../langchain/src/embeddings/fake.ts",
"../langchain/src/embeddings/ollama.ts",
"../langchain/src/embeddings/openai.ts",
"../langchain/src/embeddings/cohere.ts",
"../langchain/src/embeddings/tensorflow.ts",
"../langchain/src/embeddings/hf.ts",
"../langchain/src/embeddings/hf_transformers.ts",
"../langchain/src/embeddings/googlevertexai.ts",
"../langchain/src/embeddings/googlepalm.ts",
"../langchain/src/embeddings/minimax.ts",
"../langchain/src/embeddings/llama_cpp.ts",
"../langchain/src/llms/load.ts",
"../langchain/src/llms/base.ts",
"../langchain/src/llms/openai.ts",
"../langchain/src/llms/ai21.ts",
"../langchain/src/llms/aleph_alpha.ts",
"../langchain/src/llms/cloudflare_workersai.ts",
"../langchain/src/llms/cohere.ts",
"../langchain/src/llms/hf.ts",
"../langchain/src/llms/raycast.ts",
"../langchain/src/llms/ollama.ts",
"../langchain/src/llms/replicate.ts",
"../langchain/src/llms/googlevertexai/index.ts",
"../langchain/src/llms/googlevertexai/web.ts",
"../langchain/src/llms/googlepalm.ts",
"../langchain/src/llms/fireworks.ts",
"../langchain/src/llms/sagemaker_endpoint.ts",
"../langchain/src/llms/bedrock/index.ts",
"../langchain/src/llms/bedrock/web.ts",
"../langchain/src/llms/llama_cpp.ts",
"../langchain/src/llms/writer.ts",
"../langchain/src/llms/portkey.ts",
"../langchain/src/llms/yandex.ts",
"../langchain/src/llms/fake.ts",
"../langchain/src/prompts/index.ts",
"../langchain/src/prompts/load.ts",
"../langchain/src/vectorstores/analyticdb.ts",
"../langchain/src/vectorstores/base.ts",
"../langchain/src/vectorstores/cassandra.ts",
"../langchain/src/vectorstores/convex.ts",
"../langchain/src/vectorstores/elasticsearch.ts",
"../langchain/src/vectorstores/memory.ts",
"../langchain/src/vectorstores/cloudflare_vectorize.ts",
"../langchain/src/vectorstores/closevector/web.ts",
"../langchain/src/vectorstores/closevector/node.ts",
"../langchain/src/vectorstores/chroma.ts",
"../langchain/src/vectorstores/googlevertexai.ts",
"../langchain/src/vectorstores/hnswlib.ts",
"../langchain/src/vectorstores/faiss.ts",
"../langchain/src/vectorstores/weaviate.ts",
"../langchain/src/vectorstores/lancedb.ts",
"../langchain/src/vectorstores/momento_vector_index.ts",
"../langchain/src/vectorstores/mongo.ts",
"../langchain/src/vectorstores/mongodb_atlas.ts",
"../langchain/src/vectorstores/pinecone.ts",
"../langchain/src/vectorstores/qdrant.ts",
"../langchain/src/vectorstores/supabase.ts",
"../langchain/src/vectorstores/opensearch.ts",
"../langchain/src/vectorstores/pgvector.ts",
"../langchain/src/vectorstores/milvus.ts",
"../langchain/src/vectorstores/neo4j_vector.ts",
"../langchain/src/vectorstores/prisma.ts",
"../langchain/src/vectorstores/typeorm.ts",
"../langchain/src/vectorstores/myscale.ts",
"../langchain/src/vectorstores/redis.ts",
"../langchain/src/vectorstores/typesense.ts",
"../langchain/src/vectorstores/singlestore.ts",
"../langchain/src/vectorstores/tigris.ts",
"../langchain/src/vectorstores/usearch.ts",
"../langchain/src/vectorstores/vectara.ts",
"../langchain/src/vectorstores/vercel_postgres.ts",
"../langchain/src/vectorstores/voy.ts",
"../langchain/src/vectorstores/xata.ts",
"../langchain/src/vectorstores/zep.ts",
"../langchain/src/text_splitter.ts",
"../langchain/src/memory/index.ts",
"../langchain/src/memory/zep.ts",
"../langchain/src/document.ts",
"../langchain/src/document_loaders/base.ts",
"../langchain/src/document_loaders/web/apify_dataset.ts",
"../langchain/src/document_loaders/web/assemblyai.ts",
"../langchain/src/document_loaders/web/azure_blob_storage_container.ts",
"../langchain/src/document_loaders/web/azure_blob_storage_file.ts",
"../langchain/src/document_loaders/web/cheerio.ts",
"../langchain/src/document_loaders/web/puppeteer.ts",
"../langchain/src/document_loaders/web/playwright.ts",
"../langchain/src/document_loaders/web/college_confidential.ts",
"../langchain/src/document_loaders/web/gitbook.ts",
"../langchain/src/document_loaders/web/hn.ts",
"../langchain/src/document_loaders/web/imsdb.ts",
"../langchain/src/document_loaders/web/figma.ts",
"../langchain/src/document_loaders/web/github.ts",
"../langchain/src/document_loaders/web/notiondb.ts",
"../langchain/src/document_loaders/web/notionapi.ts",
"../langchain/src/document_loaders/web/pdf.ts",
"../langchain/src/document_loaders/web/recursive_url.ts",
"../langchain/src/document_loaders/web/s3.ts",
"../langchain/src/document_loaders/web/sonix_audio.ts",
"../langchain/src/document_loaders/web/confluence.ts",
"../langchain/src/document_loaders/web/searchapi.ts",
"../langchain/src/document_loaders/web/serpapi.ts",
"../langchain/src/document_loaders/web/sort_xyz_blockchain.ts",
"../langchain/src/document_loaders/web/youtube.ts",
"../langchain/src/document_loaders/fs/directory.ts",
"../langchain/src/document_loaders/fs/buffer.ts",
"../langchain/src/document_loaders/fs/text.ts",
"../langchain/src/document_loaders/fs/json.ts",
"../langchain/src/document_loaders/fs/srt.ts",
"../langchain/src/document_loaders/fs/pdf.ts",
"../langchain/src/document_loaders/fs/docx.ts",
"../langchain/src/document_loaders/fs/epub.ts",
"../langchain/src/document_loaders/fs/csv.ts",
"../langchain/src/document_loaders/fs/notion.ts",
"../langchain/src/document_loaders/fs/unstructured.ts",
"../langchain/src/document_loaders/fs/openai_whisper_audio.ts",
"../langchain/src/document_transformers/html_to_text.ts",
"../langchain/src/document_transformers/mozilla_readability.ts",
"../langchain/src/document_transformers/openai_functions.ts",
"../langchain/src/chat_models/base.ts",
"../langchain/src/chat_models/openai.ts",
"../langchain/src/chat_models/portkey.ts",
"../langchain/src/chat_models/anthropic.ts",
"../langchain/src/chat_models/bedrock/index.ts",
"../langchain/src/chat_models/bedrock/web.ts",
"../langchain/src/chat_models/cloudflare_workersai.ts",
"../langchain/src/chat_models/googlevertexai/index.ts",
"../langchain/src/chat_models/googlevertexai/web.ts",
"../langchain/src/chat_models/googlepalm.ts",
"../langchain/src/chat_models/fireworks.ts",
"../langchain/src/chat_models/baiduwenxin.ts",
"../langchain/src/chat_models/iflytek_xinghuo/index.ts",
"../langchain/src/chat_models/iflytek_xinghuo/web.ts",
"../langchain/src/chat_models/ollama.ts",
"../langchain/src/chat_models/minimax.ts",
"../langchain/src/chat_models/llama_cpp.ts",
"../langchain/src/chat_models/yandex.ts",
"../langchain/src/chat_models/fake.ts",
"../langchain/src/schema/index.ts",
"../langchain/src/schema/document.ts",
"../langchain/src/schema/output_parser.ts",
"../langchain/src/schema/prompt_template.ts",
"../langchain/src/schema/query_constructor.ts",
"../langchain/src/schema/retriever.ts",
"../langchain/src/schema/runnable/index.ts",
"../langchain/src/schema/storage.ts",
"../langchain/src/sql_db.ts",
"../langchain/src/callbacks/index.ts",
"../langchain/src/callbacks/handlers/llmonitor.ts",
"../langchain/src/output_parsers/index.ts",
"../langchain/src/output_parsers/expression.ts",
"../langchain/src/retrievers/amazon_kendra.ts",
"../langchain/src/retrievers/remote/index.ts",
"../langchain/src/retrievers/supabase.ts",
"../langchain/src/retrievers/zep.ts",
"../langchain/src/retrievers/metal.ts",
"../langchain/src/retrievers/chaindesk.ts",
"../langchain/src/retrievers/databerry.ts",
"../langchain/src/retrievers/contextual_compression.ts",
"../langchain/src/retrievers/document_compressors/index.ts",
"../langchain/src/retrievers/multi_query.ts",
"../langchain/src/retrievers/multi_vector.ts",
"../langchain/src/retrievers/parent_document.ts",
"../langchain/src/retrievers/tavily_search_api.ts",
"../langchain/src/retrievers/time_weighted.ts",
"../langchain/src/retrievers/document_compressors/chain_extract.ts",
"../langchain/src/retrievers/document_compressors/embeddings_filter.ts",
"../langchain/src/retrievers/hyde.ts",
"../langchain/src/retrievers/score_threshold.ts",
"../langchain/src/retrievers/self_query/index.ts",
"../langchain/src/retrievers/self_query/chroma.ts",
"../langchain/src/retrievers/self_query/functional.ts",
"../langchain/src/retrievers/self_query/pinecone.ts",
"../langchain/src/retrievers/self_query/supabase.ts",
"../langchain/src/retrievers/self_query/weaviate.ts",
"../langchain/src/retrievers/vespa.ts",
"../langchain/src/cache/index.ts",
"../langchain/src/cache/cloudflare_kv.ts",
"../langchain/src/cache/momento.ts",
"../langchain/src/cache/redis.ts",
"../langchain/src/cache/ioredis.ts",
"../langchain/src/cache/upstash_redis.ts",
"../langchain/src/stores/doc/in_memory.ts",
"../langchain/src/stores/doc/gcs.ts",
"../langchain/src/stores/file/in_memory.ts",
"../langchain/src/stores/file/node.ts",
"../langchain/src/stores/message/cassandra.ts",
"../langchain/src/stores/message/convex.ts",
"../langchain/src/stores/message/cloudflare_d1.ts",
"../langchain/src/stores/message/in_memory.ts",
"../langchain/src/stores/message/dynamodb.ts",
"../langchain/src/stores/message/firestore.ts",
"../langchain/src/stores/message/momento.ts",
"../langchain/src/stores/message/mongodb.ts",
"../langchain/src/stores/message/redis.ts",
"../langchain/src/stores/message/ioredis.ts",
"../langchain/src/stores/message/upstash_redis.ts",
"../langchain/src/stores/message/planetscale.ts",
"../langchain/src/stores/message/xata.ts",
"../langchain/src/storage/convex.ts",
"../langchain/src/storage/encoder_backed.ts",
"../langchain/src/storage/in_memory.ts",
"../langchain/src/storage/ioredis.ts",
"../langchain/src/storage/vercel_kv.ts",
"../langchain/src/storage/upstash_redis.ts",
"../langchain/src/storage/file_system.ts",
"../langchain/src/graphs/neo4j_graph.ts",
"../langchain/src/hub.ts",
"../langchain/src/util/convex.ts",
"../langchain/src/util/document.ts",
"../langchain/src/util/math.ts",
"../langchain/src/util/time.ts",
"../langchain/src/experimental/autogpt/index.ts",
"../langchain/src/experimental/babyagi/index.ts",
"../langchain/src/experimental/generative_agents/index.ts",
"../langchain/src/experimental/plan_and_execute/index.ts",
"../langchain/src/experimental/multimodal_embeddings/googlevertexai.ts",
"../langchain/src/experimental/chat_models/anthropic_functions.ts",
"../langchain/src/experimental/chat_models/bittensor.ts",
"../langchain/src/experimental/llms/bittensor.ts",
"../langchain/src/experimental/hubs/makersuite/googlemakersuitehub.ts",
"../langchain/src/experimental/chains/violation_of_expectations/index.ts",
"../langchain/src/evaluation/index.ts",
"../langchain/src/runnables/remote.ts"
]
}
Loading

0 comments on commit 0074d89

Please sign in to comment.