LoginSignup
0
0

More than 1 year has passed since last update.

ChatGPTがプログラミング言語を生み出せそうな件について

Posted at

初めに

最近は連日のようにChatGPT関連のツイートや動画、記事などを目にしますね。

酒を飲みながら引越し準備に明け暮れていたのですが、ふと
「chatGPTって簡単なプログラム書けるけど言語とか作れるのか?」
って思ってしまったわけです。
そこでChatGPTにこんな質問をしてみたところから今回の記事がスタートします。

最初の質問

スクリーンショット 2023-02-19 23.37.07.png

まさか、言語なんてつくってくるわけがない。
質問した瞬間の僕はそう考えていました。

返答

スクリーンショット 2023-02-19 23.38.13.png

。。。。。!?!?!?

スクリーンショット 2023-02-19 23.42.41.png
スクリーンショット 2023-02-19 23.42.54.png
スクリーンショット 2023-02-19 23.43.22.png
スクリーンショット 2023-02-19 23.43.34.png

嘘だろ。。。

プログラミング言語生み出されたらもうエンジニアは何をすればいいんだ仕事ないじゃん。
とか思ってAIの奴隷になる覚悟を決めました。

じゃあ環境構築は、、、?

スクリーンショット 2023-02-19 23.44.05.png

超ホッとした。

いやもう流石にめちゃくちゃホッとしました。

プログラミング言語生み出されちゃったらまじでもう生きてけないですからね。
4月から新卒なのに早々と職を失う覚悟をするところでした。

内部実装書いてくれたりは。。。?

スクリーンショット 2023-02-19 23.46.46.png

さすがにしないみたいですが、Pythonが返ってきたのでいかに乗っけます。

import spacy
from collections import Counter

# SpaCyライブラリを使用して自然言語処理を行う
nlp = spacy.load("en_core_web_sm")

# 分類器クラス
class Classifier:
    def __init__(self):
        pass

    def classify(self, text):
        # 分類器による文章分類の処理
        return "classification"

# 要約クラス
class Summarizer:
    def __init__(self):
        pass

    def summarize(self, text):
        # 要約による文章要約の処理
        doc = nlp(text)
        sentences = [sent.text for sent in doc.sents]
        word_freq = Counter(doc)
        ranking = {sentences[i]: sum([word_freq[word] for word in nlp(sentences[i])]) for i in range(len(sentences))}
        top_sentences = [sentence for sentence, score in sorted(ranking.items(), key=lambda x: x[1], reverse=True)][:3]
        summary = " ".join(top_sentences)
        return summary

# 意味解析クラス
class Analyzer:
    def __init__(self):
        pass

    def analyze(self, text):
        # 意味解析による文章解析の処理
        doc = nlp(text)
        # 例えば、単語のリストを返す
        words = [token.text for token in doc]
        return words

# サンプルプログラム
def main():
    # テキストの入力
    text = "This is a sample text."

    # 分類器による文章分類
    classifier = Classifier()
    classification = classifier.classify(text)
    print("Classification:", classification)

    # 要約による文章要約
    summarizer = Summarizer()
    summary = summarizer.summarize(text)
    print("Summary:", summary)

    # 意味解析による文章解析
    analyzer = Analyzer()
    words = analyzer.analyze(text)
    print("Words:", words)

if __name__ == "__main__":
    main()

なんかそれっぽいコードが返ってきました。
Spacyは卒業研究の実装にも使ったはずなので懐かしいです。

てか代替案出してくれるなんて疑いようのないくらい僕より優秀では。。。

余談ですがRegenerateすることでいろんなプログラミング言語案を作ってくれます。

まとめ

  • 流石にプログラミング言語の内部実装までは書いてなかった。
  • 言語作れる人であればこのアイデアで言語作れそう。
  • まだイノベーションを起こせるのは人間の領域っぽい。
  • AIとは上手に付き合っていきたいなと思いました。
  • ChatGPTすげえ!!

最悪AIが暴走してディストピアになった時のために今からAIを褒め称える記事をいっぱい書いておこう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0